欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > C# >内容正文

C#

ASP.NETMVC View页面 序列化 c# Model 为 Json字符串

发布时间:2025/7/14 C# 54 豆豆
生活随笔 收集整理的这篇文章主要介绍了 ASP.NETMVC View页面 序列化 c# Model 为 Json字符串 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

ASP.NET MVC , Controller 传递给View 的 Model,  将此Model在JS中 序列化为 JSon字符串,  再使用JSON.parse() 解析为JS object, 遇到问题:

 1、Unexpected token ]

 2、Unexpected token &

@model MOD.GiftModel[] @using System.Web.Script.Serialization @{Layout = null; }<!DOCTYPE html><html> <head><meta name="viewport" content="width=device-width" /><title>Index</title><script src="~/Scripts/jquery-3.1.1.js"></script><script src="~/Scripts/knockout-3.4.2.debug.js"></script><script>@Model.ToString();</script> </head> <body>@{String str = Newtonsoft.Json.JsonConvert.SerializeObject(Model); /// ASP.NET 两种序列化方法 String str2 = new JavaScriptSerializer().Serialize(Model);<text>@str</text><text>@str2 </text>}<script>var str = "@str"; /// 此时的 str中 包含有 &quote; 直接使用JSON.Parse()解析会报错var str2 = "@str2";var dataUser = str;var reg = new RegExp("&quot;", "g"); //创建正则RegExp对象 var data = JSON.parse(dataUser.replace(reg, '"')) /// 把 字符串中的 &quote; 替换成 ” 才行alert(data);alert(typeof(data));</script> </body> </html>

这种方法 使用 太过麻烦,  ASP.NET MVC中 JSON() 可以直接传View 解析好的字符串;

而把 Controller 传给Veiw的 对象 转化为 JS对象, 我想实验下 ,因为想使用  knockout 直接把 Controller传过来的数据绑定到ViewModel中, 这样不用再使用AJAX请求数据了,

不知道 哪位大神 有没有比较方便的方法?    使用AJAX去请返回json字符串 这我知道, 我想知道的是  在View页面中 把 Controller 传给Veiw的 对象 转化为 JS对象 比较简单的方法;

 

转载于:https://www.cnblogs.com/generalLi/p/6567600.html

《新程序员》:云原生和全面数字化实践50位技术专家共同创作,文字、视频、音频交互阅读

总结

以上是生活随笔为你收集整理的ASP.NETMVC View页面 序列化 c# Model 为 Json字符串的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。