12 c# asp.net-mvc json.net razor
我有一个对象:
public class Test
{
public string Prop1 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我想在视图中将它序列化为json,所以在我的cshtml中:
<script type="text/javascript">
var myJson = JSON.parse('@Html.Raw(JsonConvert.Serialize(Model.MyTest))');
</script>
Run Code Online (Sandbox Code Playgroud)
它工作,直到Prop1包含引号,因为它被渲染为:
var myJson = JSON.parse('{"Prop1":"\"Quoted text\""}');
Run Code Online (Sandbox Code Playgroud)
不幸的是,这样的行抛出了解析错误.我知道它应该是:
var myJson = JSON.parse('{"Prop1":"\\"Quoted text\\""}');
Run Code Online (Sandbox Code Playgroud)
如何配置Newtonsoft以正确的方式序列化它?
Pat*_*man 10
您不应该再次解析字符串,因为已经将其序列化为JSON,您可以直接在Javascript(JSON中的JS)中使用它.
var myJson = @Html.Raw(JsonConvert.Serialize(Model.MyTest));
Run Code Online (Sandbox Code Playgroud)
将输出:
var myJson = {"Prop1":"\"Quoted text\""};
Run Code Online (Sandbox Code Playgroud)
而且,因为你总是需要一个JSFiddle来证明它的工作原理.
| 归档时间: |
|
| 查看次数: |
5614 次 |
| 最近记录: |