C# 使用JSON的有效方法
我收到这个JSON响应:C# 使用JSON的有效方法,c#,json,linq,c#-4.0,object-model,C#,Json,Linq,C# 4.0,Object Model,我收到这个JSON响应: { "status": "Ok", "total": 105373, "result": [ { "id": 668839, "cn": "A-12157-68812", "pD": "09-12-2012", "cCD": "06-05-2012", "cT": "PERM", "fN"
{
"status": "Ok",
"total": 105373,
"result": [
{
"id": 668839,
"cn": "A-12157-68812",
"pD": "09-12-2012",
"cCD": "06-05-2012",
"cT": "PERM",
"fN": "COMCAST CABLE COMMUNICATIONS, LLC",
"s": "NJ",
"cR": "Certified",
"pT": "ENGINEER 3",
"vC": 6,
"cddt": "html"
},
{
"id": 725695,
"cn": "A-12361-25668",
"pD": "05-28-2013",
"cCD": "12-26-2012",
"cT": "PERM",
"fN": "L'ONVIE INC.",
"s": "NY",
"cR": "Certified",
"pT": "Biochemist",
"vC": 6,
"cddt": "html"
},
{
"id": 0,
"cn": "A-11199-93239",
"pD": "05-31-2012",
"cCD": "07-18-2011",
"cT": "PERM",
"fN": "ROCKWELL AUTOMATION, INC.",
"s": "PR",
"cR": "Certified",
"pT": "Marketing Managers",
"vC": -1
}]
}
public class Status {
string Status {get; set;}
int Total {get; set;}
IEnumerable<Result> Results {get; set;}
}
public class Result {
string Id {get; set;}
..................
}
公共类状态{
字符串状态{get;set;}
int Total{get;set;}
IEnumerable结果{get;set;}
}
公开课成绩{
字符串Id{get;set;}
..................
}
然后找出映射/投射?试试。看看这个关于LINQ查询的文章。您甚至可以使用Json.NET来自动执行。如果您使用的是最新版本的Visual Studio,则可以使用编辑>粘贴特殊>粘贴Json作为类。这将为您节省大量时间:) 如果您对数据进行的不仅仅是简单的操作,那么您需要创建自己的类。您可以使用数据属性将Json中的字段重命名为更合适的名称 这取决于您使用的反序列化程序是-Json.net还是内置的.net版本
如果使用内置的.net反序列化程序,请尝试搜索dataContract和dataMember;如果使用json.net,请尝试搜索jsonProperty。请避免在一个问题中问几个问题。只需将它们作为单独的问题发布即可。这不是几个问题。在多重选择的背景下寻找效率。也许你只需要稍微改革一下。现在看起来是这样的:1)如何将JSON字符串转换为可以使用LINQ查询的对象?2) 如何在数据库中存储此对象?3) 如何将其映射到强类型的内容?@vbo你是对的。现在更好了。但这是1)如何转换。。。?2) 强类与动态类映射。顺便说一下,第二个问题很明显。类的性能更好——动态的东西意味着在运行时执行更多的代码。但是,如果您硬编码所有properties.Geez,那么在开发中会有开销。较新版本的Visual Studio是否也会煮咖啡和做三明治?@Geezer68数据属性会是什么样子?@AntonTykhyy您应该看看他们为VS2014计划了什么!(特别是)