MVC3 ViewBage 输出的值 被编码

问题描述:

      后台,Actoin中我向ViewBage中加入了一个json

ViewBage.JsonDateMenu ="[{\"id\":2,\"text\":\"菜单管理\",\"state\":\"open\",\"iconCls\":null,\"checked\":true,\"attributes\":null,\"children\":[{\"id\":3,\"text\":\"新建菜单               \",\"state\":\"open\",\"iconCls\":null,\"checked\":true,\"attributes\":null,\"children\":null},{\"id\":5,\"text\":\"编辑菜单\",\"state\":\"open\",\"iconCls\":null,\"checked\":true,\"attributes\":null,\"children\":null}]},{\"id\":4,\"text\":\"角色权限管理\",\"state\":\"open\",\"iconCls\":null,\"checked\":true,\"attributes\":null,\"children\":[{\"id\":6,\"text\":\"新增角色\",\"state\":\"open\",\"iconCls\":null,\"checked\":true,\"attributes\":null,\"children\":null}]}]" System.String

但是前台通过@ViewBage取到的值是这样的

     [{"id":2,"text":"菜单管理","state":"open","iconCls":null,"checked":true,"attributes":null,"children":[{"id":3,"text":"新建菜单","state":"open","iconCls":null,"checked":true,"attributes":null,"children":null},{"id":5,"text":"编辑菜单","state":"open","iconCls":null,"checked":true,"attributes":null,"children":null}]},{"id":4,"text":"角色权限管理","state":"open","iconCls":null,"checked":true,"attributes":null,"children":[{"id":6,"text":"新增角色","state":"open","iconCls":null,"checked":true,"attributes":null,"children":null}]}]

    很明显,双引号被编码了显示出来,这样很明显不是我们要的效果,我们要的是原样输出,

解决方案:

1. @MvcHtmlString.Create(@ViewBag.JsonDateMenu),这样之后,一切正常了!,一般扩展HtmlHelp的时候返回MVCHtmlString 都是使用的这个方法

2.  @Html.Raw(@ViewBag.JsonDateMenu) 后来,无意中发现了这个方法,一样解决了问题,个人这个方式更好,当然还可以直接人工代码解码

解决途径:

     网上查询

参考资料:忘了...

时间: 2024-10-13 05:13:15

MVC3 ViewBage 输出的值 被编码的相关文章

变量 、缓冲值 、编码

变量 .缓冲值 .编码 --道心 变量 声明变量 eg: #!/usr/bin/env python # -*- coding: utf-8 -*- name = "DaoXin" 上述代码声明了一个变量,变量名为: name,变量name的值为:"DaoXin" 变量的作用:昵称,其代指内存里某个地址中保存的内容 变量定义的规则: 变量名只能是 字母.数字或下划线的任意组合 变量名的第一个字符不能是数字 以下关键字不能声明为变量名 ['and', 'as', 'a

Python基础二:pycharm的安装及简单使用,while循环,格式化输出,运算符, 编码的初识,git

Python基础二: pycharm的安装及简单使用,while循环,格式化输出,运算符, 编码的初识,git 1.pycharm的安装及简单使用 Tab / Shift + Tab 缩进.不缩进当前行 (先选中代码) Shift + 滚轮 放大缩小代码 Ctrl + ? 注释.解注(先选中代码) Ctrl + d 复制上一行代码 Ctrl + z 撤销 Ctrl + Shift + F10 RUN Ctrl + 左键---->点击 int,str 等可查看源码 2.while 循环(重点) w

1113: 零起点学算法20——输出特殊值II

1113: 零起点学算法20--输出特殊值II Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 2078  Accepted: 1622[Submit][Status][Web Board] Description 输出\n Input 无 Output 输出\n(换行) Sample Output \n Source 零起点学算法 1 #include<stdio.h> 2 int main()

中根递归遍历二叉树,并输出权值大于50的节点

/** * @author 黄志伟 */ public class Search{ public static void main(String[] args){ Node A = new Node(); A.setValue(51); Node B = new Node(); B.setValue(52); Node C = new Node(); C.setValue(53); Node D = new Node(); D.setValue(49); Node E = new Node();

枚举根据ID输出文本值,获取枚举对应的值

public enum BookingStatus {    未提交 = 1,    已提交,    已取消,    已订妥 = 6} 我们想在页面输出一个订单的状态时,可以这样: HotelOrder myOrder = GetItem(orderId);         //获取一个订单对象lbStatus.Text = ((BookingStatus)myOrder.StatusId).ToString(); // 输出文本值 myOrder.StatusId = (int)Booking

php输出json中文显示编码-解决办法

$str = "中华人民共和国";$ar = array( "a" => "a0", "b" => "b0", "c" => "c0", "d" => "d0", "e" => $str, );echo preg_replace("#\\\u([0-9a-f]{4})#

输入两个整数,要求输出其中值较大者。要求用函数来找大数。

/* p176 例7.2 输入两个整数,要求输出其中值较大者.要求用函数来找大数. (1)函数名:应是见名知意,反应函数的功能,今定名为max (2)函数的类型:由于给定的两个数是整数,显然其中大者也是整数,也就是说max函数的值(即返回主调函数的值)应该是整型. (3)max函数的参数个数和类型:max函数应当有两个参数,以便从主函数接受两个整数,显然,参数的类型应当是整型. 在调用max函数时,应当给出两个整数作为实参,传给max函数中的两个形参*/ //编写程序: //(1)先编写max函

C语言:返回两个数组中第一个元素的指针,并输出这个值

// //  main.c //  Pointer_search // //  Created by ma c on 15/8/2. //  Copyright (c) 2015年 bjsxt. All rights reserved. //  要求:通过指针查找,实现比较两个有序数组中的元素,输出两个数组中的第一个相同的元素值. #include <stdio.h> int *searchSameElement(int *a,int *b,int len1,int len2); int ma

Foreach循环输出索引值

循环输邮索引值,使用for是没有任何问题: class Bh { public string[] str { get; set; } public void TestFor() { for (int i = 0; i < str.Length; i++) { Console.WriteLine("index:{0},Value:{1}", i, str[i]); } } } Source Code 运行程序: 但是,某一情况之下,你在程序中,是使用foreach方法进行循环的,但