Tag: json

通过json将javascript数组传递给C#

我正在使用这个javascript数组: var exportOptions = [{ jobName: “”}, {exportType: “”}, {attachToEmail: “”}, {distributorName: “”}, {vistaNumber: “”}, {customerName: “”}, {competitors: “”}, {agreementType: “”}, { annualPotential: “” }, {businessCase: “” }]; 我用这段代码传递给ASP.NET codebehind(C#): $.ajax({ type: ‘POST’, url: ‘Epad.aspx/generateReport’, data: “{‘columnList’: ‘” + columnList + “‘, ‘exportOptions’:” + JSON.stringify( exportOptions ) + “}”, contentType: ‘application/json; charset=utf-8’, dataType: ‘json’, async: […]

如何将多种数据类型添加到列表中

我的列表如下, var serie_line = new { name = series_name , data =new List() }; 在包含浮点值的另一个列表中的上述代码数据中,我希望数据包含两个不同的数据类型值,即string和float值,当我尝试添加两个不同的数据类型值时,如下所示, var serie_line = new { name = series_name , data =new List() }; 它给我一个错误,因为Using the generic type’System.Collections.Generic.List’ requires 1 argument. 我不能尝试data=new List<Tupple>(); ..因为我正在使用.NET 3.5 …任何想法..我知道我处理这个问题..谢谢你, ———-更新的问题——— 我需要的输出如下, { “legend”:{“enabled”:”true”}, “title”:{“text”:”Financial”}, “chart”:{“type”:”pie”}, “series”: [ {“name”:”Actual-“,”data”:[[“Market Share”,20.00],[“Sales Growth”,30.00],[“Operating Profit”,40.00],[“Actual-Gross Margin %”,10.00]]} ] […]

ServiceStack.Text将json反序列化为对象始终转换为字符串并使用引号表现奇怪

我想做什么: 我有json对象,其值可以是字符串,整数,双精度或任何这些的列表。 我正在尝试将这些json字符串反序列化为C#对象,但由于它们可能有多种类型,因此我坚持使用通用对象,而不是强类型替代。 我的问题:似乎ServiceStack.Text.JsonSerializer.DeserializeFromString(jsonString)函数在T = object的情况下表现得很奇怪。 它总是将事物视为字符串,并且不适用于引号。 这是一个例子: string json1 = “[1]”; string json2 = “[1,2]”; string json3 = “[‘hello’]”; string json4 = “[‘hello’,’world’]”; string json5 = “[\”hello\”]”; string json6 = “[\”hello\”,\”world\”]”; object o1 = JsonSerializer.DeserializeFromString(json1); object o2 = JsonSerializer.DeserializeFromString(json2); object o3 = JsonSerializer.DeserializeFromString(json3); object o4 = JsonSerializer.DeserializeFromString(json4); object o5 = JsonSerializer.DeserializeFromString(json5); object o6 = […]

如何使用DataContractJsonSerializer来解析嵌套的json对象?

我有一个像这样的json文本: { “response”:200, “result”: { “package”: { “token”:”aaa” } } } 我正在使用DataContractJsonSerializer从上面的json中提取信息。 public static T Deserialize(string json) { var instance = Activator.CreateInstance(); using (var ms = new MemoryStream(Encoding.Unicode.GetBytes(json))) { var serializer = new DataContractJsonSerializer(instance.GetType()); return (T)serializer.ReadObject(ms); } } 我将课程描述如下: [DataContract] class IttResponse { [DataMember(Name = “response”)] public int Response { get; protected set; } [DataMember(Name […]

具有Parent和Child到JSON格式的数据表

我正在尝试从C#datatable构建JSON输出。 单个数据表也包含父级和子级。 我想使用LINQ来设置JSON数据,但是我想避免创建类,因为我有很多这样的要求,并且为每个创建类将是一个负担。 JSON输出应该是 { Sports : [ {item: ‘Porsche 911’, quantity: 100}, {item: ‘Porsche 912’, quantity: 200} ], Luxury : [ {item: ‘BMW 3 Series’, quantity: 300} ], Small :[ {item: ‘Toyota Corolla’, quantity: 400}, {item: ‘Mitsubishi Lancer’, quantity: 500}, {item: ‘Mitsubishi Lancer 2’, quantity: 600} ]} 我试过的示例代码 //get current stock DataTable dtCurrentStock = […]

Json.net将数字属性序列化为字符串

我正在使用JsonConvert.SerializeObject来序列化模型对象。 服务器期望所有字段都是字符串。 我的模型对象具有数字属性和字符串属性。 我无法向模型对象添加属性。 有没有办法将所有属性值序列化,就好像它们是字符串一样? 我必须只支持序列化,而不是反序列化。

应用程序中的SQLite文件版本兼容性

我有一个C#.NET应用程序(一种复杂的计算应用程序),其中用户输入数据,处理后的信息使用JSON序列化和EF保存到SQLite文件中。 必要时可以将相同内容加载到我们的应用程序中。 应用程序在开发过程中经历了很多变化,并且类也被修改。 因此,以前在SQLite文件中保存的序列化对象与较新的序列化对象不同。 我想为旧文件提供兼容性,以便可以在新应用程序中打开它。 简单来说,使用JOL将带有bool作为成员的.NET类“类XYZ”序列化,并在SQLite文件中保存为BLOB。 稍后在较新版本的app中,“类XYZ”的bool成员被修改为int。 如何使用bool类型将以前保存的文件反序列化到新的应用程序中? 在整个版本中,SQLite表结构也有变化。 如何在.NET中实现这一目标?

解析vcard json C#

我想使用Json.NET解析vcard RFC 7095: [“vcard”, [ [“version”, {}, “text”, “4.0”], [“fn”, {}, “text”, “John Doe”], [“gender”, {}, “text”, “M”], [“categories”, {}, “text”, “computers”, “cameras”], … ] ] 我尝试使用FormatTypeFormater,但我无法validationjson。

覆盖Render方法的问题

我想序列化Web表单的所有输出(从.NET 3.5上的aspx和aspx.cs)到JSON。 所以,这是我的代码: protected string myText; protected void Page_Load(object sender, EventArgs e) { myText = “This is my whole codeA link”; } protected internal override void Render(HtmlTextWriter writer) { var serializer = new JavaScriptSerializer(); Response.Write(Request[“callback”] + serializer.Serialize(writer.ToString())); } 但我得到这个错误: CS0507: ‘moduli_Prova.Render(System.Web.UI.HtmlTextWriter)’: cannot change access modifiers when overriding ‘protected’ inherited member ‘System.Web.UI.Control.Render(System.Web.UI.HtmlTextWriter)’ 我哪里错了? 这是正确的方法吗?

使用DataContractJsonSerializer在.net中反序列化json base64二进制文件

嘿,我有一个问题,使用wcf datacontract将base64 json反序列化回.net对象…. 我有这个反序列化: public static T FromJSON( this string json ) { using ( MemoryStream ms = new MemoryStream(ASCIIEncoding.Default.GetBytes(json)) ) { DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T)); return (T)ser.ReadObject(ms); } } 并且…我的模型课中有这个…… [DataMember] [Column(AutoSync = AutoSync.Always, DbType = “rowversion not null”, CanBeNull = false, IsDbGenerated = true, IsVersion = true, UpdateCheck = UpdateCheck.Never)] public byte[] […]