Questions tagged «javascriptserializer»

27
JavaScriptSerializer-枚举的JSON序列化为字符串
Наэтотвопросестьответына 堆栈溢出нарусском:Сериализация枚举вJSONввидестроки 我有一个包含enum属性的类,并使用序列化对象后JavaScriptSerializer,我的json结果包含枚举的整数值而不是其string“名称”。有没有一种方法可以string在我的json中获取枚举而无需创建自定义JavaScriptConverter?也许有一个属性,我可以装饰enum定义或对象属性? 举个例子: enum Gender { Male, Female } class Person { int Age { get; set; } Gender Gender { get; set; } } 所需的json结果: { "Age": 35, "Gender": "Male" } 理想情况下,使用内置的.NET框架类寻找答案,如果可能的话,欢迎使用替代方法(如Json.net)。

13
如何使用C#在.NET中获取格式化的JSON?
我正在使用.NET JSON解析器,并希望序列化我的配置文件,以便可读。所以代替: {"blah":"v", "blah2":"v2"} 我想要更好的东西: { "blah":"v", "blah2":"v2" } 我的代码是这样的: using System.Web.Script.Serialization; var ser = new JavaScriptSerializer(); configSz = ser.Serialize(config); using (var f = (TextWriter)File.CreateText(configFn)) { f.WriteLine(configSz); f.Close(); }

8
JavaScriptSerializer.Deserialize-如何更改字段名称
摘要:使用JavaScriptSerializer.Deserialize时,如何将JSON数据中的字段名称映射到.Net对象的字段名称? 较长的版本:我从服务器API获得以下JSON数据(未在.Net中编码) {"user_id":1234, "detail_level":"low"} 我有以下C#对象: [Serializable] public class DataObject { [XmlElement("user_id")] public int UserId { get; set; } [XmlElement("detail_level")] public DetailLevel DetailLevel { get; set; } } 其中DetailLevel是使用“低”作为值之一的枚举。 该测试失败: [TestMethod] public void DataObjectSimpleParseTest() { JavaScriptSerializer serializer = new JavaScriptSerializer(); DataObject dataObject = serializer.Deserialize<DataObject>(JsonData); Assert.IsNotNull(dataObject); Assert.AreEqual(DetailLevel.Low, dataObject.DetailLevel); Assert.AreEqual(1234, dataObject.UserId); } 最后两个断言失败,因为这些字段中没有数据。如果我将JSON数据更改为 …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.