如何在 MVC4 中将 Json 字符串转换为 C# 对象
How to Convert Json string into C# object in MVC4
我有一个 json 字符串,它是使用模型字符串值 属性 在控制器上提交的。我想将此 json 字符串转换为 C# 泛型列表对象。
下面是我的 json 字符串
{
"MLIDandRackPosition": [
{
"MLID": "27",
"PositionInRack": "3"
},
{
"MLID": "24",
"PositionInRack": "4"
}
]
}
下面是我的class
public class MLIDandRackPosition
{
public int MLID { get; set; }
public int PositionInRack { get; set; }
}
我想要控制器操作方法上 json 字符串的 MLIDandRackPosition class 列表。
请帮忙
我强烈建议您使用 .NET 平台的 NewtonSoft 库,在谈到 JSON 序列化时是最好的。
使用 JSON.NET 你可以在一行中完成:
MLIDandRackPosition myObj = JsonConvert.DeserializeObject<MLIDandRackPosition>(myString);
有关 JSON.NET 的更多信息,请参阅 http://www.newtonsoft.com/json/help/html/Introduction.htm。
您的对象将正确绑定到
public ActionResult SomeAction(IEnumerable<MLIDandRackPosition> MLIDandRackPosition)
如果设置以下ajax个参数
var data = { "MLIDandRackPosition": [ { "MLID": "27", "PositionInRack": "3" }, { "MLID": "24", "PositionInRack": "4" } ] };
$.ajax({
...
traditional: true,
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data)
})
尽管我建议更改参数名称(比如 model
)和 var data = { "model": [ { "MLID": ....] };
我有一个 json 字符串,它是使用模型字符串值 属性 在控制器上提交的。我想将此 json 字符串转换为 C# 泛型列表对象。
下面是我的 json 字符串
{
"MLIDandRackPosition": [
{
"MLID": "27",
"PositionInRack": "3"
},
{
"MLID": "24",
"PositionInRack": "4"
}
]
}
下面是我的class
public class MLIDandRackPosition
{
public int MLID { get; set; }
public int PositionInRack { get; set; }
}
我想要控制器操作方法上 json 字符串的 MLIDandRackPosition class 列表。
请帮忙
我强烈建议您使用 .NET 平台的 NewtonSoft 库,在谈到 JSON 序列化时是最好的。
使用 JSON.NET 你可以在一行中完成:
MLIDandRackPosition myObj = JsonConvert.DeserializeObject<MLIDandRackPosition>(myString);
有关 JSON.NET 的更多信息,请参阅 http://www.newtonsoft.com/json/help/html/Introduction.htm。
您的对象将正确绑定到
public ActionResult SomeAction(IEnumerable<MLIDandRackPosition> MLIDandRackPosition)
如果设置以下ajax个参数
var data = { "MLIDandRackPosition": [ { "MLID": "27", "PositionInRack": "3" }, { "MLID": "24", "PositionInRack": "4" } ] };
$.ajax({
...
traditional: true,
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data)
})
尽管我建议更改参数名称(比如 model
)和 var data = { "model": [ { "MLID": ....] };