当我们从服务器端向客户端发送数据时,数据会自动序列化并转换为 json 格式,jquery 可以高度解析该 json。
作为示例
[WebMethod]
public static Person GetData()
{
JavaScriptSerializer js = new JavaScriptSerializer();
Person p1 = new Person();
p1.firstName = "Rakki";
p1.lastName = "Muthukumar";
p1.technologies = new string[] { "IIS", "ASP.NET", "JavaScript", "AJAX" };
return p1;
}
上面的技巧有效,数据转换为 json 格式,然后返回客户端
但是我看到有人使用JavaScriptSerializer类将数据转换为json格式,然后将整个json发送到客户端由jquery解析。
JavaScriptSerializer 的小示例
[WebMethod]
public static string GetData()
{
JavaScriptSerializer js = new JavaScriptSerializer();
Person p1 = new Person();
p1.firstName = "Rakki";
p1.lastName = "Muthukumar";
p1.technologies = new string[] { "IIS", "ASP.NET", "JavaScript", "AJAX" };
string str = js.Serialize(p1);
}
我只需要知道当数据自动转换为json时,为什么人们使用JavaScriptSerializer类来转换json格式的数据。
请告诉我使用JavaScriptSerializer将数据转换为json格式的具体情况。
请详细讨论这个问题......谢谢
最佳答案
我认为这是一种编码习惯或者是一种定向思维,甚至通过.NET框架帮助我们完成了这一步。
但从另一方面来说,我们通常认为客户端只接受一些字符串值,例如 json、xml 或一些普通文本。 可能在我们看来,它们是一种声音,C#类型与javascript类型不兼容,我们需要在使用它们之前对其进行转换。 而且,我们认为这是获得我们想要的结果的安全方法。
关于jquery - 何时使用 JavaScriptSerializer jquery ajax 和 asp.net 服务器端方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11782918/