是有一个内置的方式。净阿贾克斯手动将对JSON串?
-
09-06-2019 - |
题
我已经找到了 ScriptingJsonSerializationSection
但我不知道如何使用它。我可以写一个函数转换的对象JSON串手动,但自那以后。净可以做到这一上飞 <System.Web.Services.WebMethod()>
和 <System.Web.Script.Services.ScriptMethod()>
属性,所以必须有一个内置的办法,我丢失了。
PS:使用Asp.Net 2.0VB.Net -我把这个标记,但我认为人们错过了。
解决方案
这应该做的把戏
Dim jsonSerialiser As New System.Web.Script.Serialization.JavaScriptSerializer
Dim jsonString as String = jsonSerialiser.Serialize(yourObject)
其他提示
我觉得你在找什么是这类:
System.ServiceModel.Web.DataContractJsonSerializer
这里有一个例子是从里克Strahl: DataContractJsonSerializer。净3.5
由于JavaScriptSerializer类在技术上是正在过时,我认为 DataContractJsonSerializer 是最好的路要走,如果你使用的3.0+.
好吧,我目前正在使用以下延伸方法的序列化和deserialize的对象:
using System.Web.Script.Serialization;
public static string ToJSON(this object objectToSerialize)
{
JavaScriptSerializer jss = new JavaScriptSerializer();
return jss.Serialize(objectToSerialize);
}
/// <typeparam name="T">The type we are deserializing the JSON to.</typeparam>
public static T FromJSON<T>(this string json)
{
JavaScriptSerializer jss = new JavaScriptSerializer();
return jss.Deserialize<T>(json);
}
我用这个相当多的-是预先警告,这种实现是有点幼稚(即有一些潜在的问题,这取决于你是什么序列化和如何使用它的客户,特别是与DateTimes).
在该系统。网。扩展大会,版本3.5.0.0,还有一个 JavaScriptSerializer 类应该处理你想要什么。
不隶属于 StackOverflow