根据JSON结构创建C#类
我正在研究Xamarin表格。我创建了一个C#类来反序列化JSON。但我不知道该怎么说。即使已使用,但仍会出现以下错误: System.Reflection.TargetInvocationException:调用的目标已引发异常。-->System.NotSupportedException:在创建表时不知道System.Collections.Generic.List`的情况 这是我的JSON根据JSON结构创建C#类,c#,xamarin.forms,json.net,deserialization,json-deserialization,C#,Xamarin.forms,Json.net,Deserialization,Json Deserialization,我正在研究Xamarin表格。我创建了一个C#类来反序列化JSON。但我不知道该怎么说。即使已使用,但仍会出现以下错误: System.Reflection.TargetInvocationException:调用的目标已引发异常。-->System.NotSupportedException:在创建表时不知道System.Collections.Generic.List`的情况 这是我的JSON [{ "firstName":"X", "lastName":"Y",
[{
"firstName":"X",
"lastName":"Y",
"Ids":["1"],
"specialIds":[],
"options":{
"isAccepting":false
}
},
{
"firstName":"Z",
"lastName":"A",
"Ids":["11"],
"specialIds":[],
"options":{
"isAccepting":false}
},
}]
这是我的C#
公共类提供程序
{
公共字符串名{get;set;}
公共字符串lastName{get;set;}
公共列表ID{get;set;}
公共列表特殊项{get;set;}
公共选项选项{get;set;}
}
公共类选项
{
公共bool正在接受{get;set;}
}
如何在C#中分配ID、特殊ID和选项?如果我只使用firstname和lastname,它工作得很好。但是如果我用其他的,我会出错。
请帮助我根据上述JSON分配此对象 您当前的Json无效,它应该如下所示:
[
{
"firstName": "X",
"lastName": "Y",
"Ids": [
"1"
],
"specialIds": [],
"options": {
"isAccepting": false
}
},
{
"firstName": "Z",
"lastName": "X",
"Ids": [
"11"
],
"specialIds": [],
"options": {
"isAccepting": false
}
}
]
public class Provider
{
public string firstName { get; set; }
public string lastName { get; set; }
public IList<string> Ids { get; set; }
public IList<string> specialIds { get; set; }
public Options options { get; set; }
}
public class Options
{
public bool isAccepting { get; set; }
}
如果您想要它的C#model,它将如下所示:
[
{
"firstName": "X",
"lastName": "Y",
"Ids": [
"1"
],
"specialIds": [],
"options": {
"isAccepting": false
}
},
{
"firstName": "Z",
"lastName": "X",
"Ids": [
"11"
],
"specialIds": [],
"options": {
"isAccepting": false
}
}
]
public class Provider
{
public string firstName { get; set; }
public string lastName { get; set; }
public IList<string> Ids { get; set; }
public IList<string> specialIds { get; set; }
public Options options { get; set; }
}
public class Options
{
public bool isAccepting { get; set; }
}
公共类提供程序
{
公共字符串名{get;set;}
公共字符串lastName{get;set;}
公共IList ID{get;set;}
公共IList SpecialId{get;set;}
公共选项选项{get;set;}
}
公共类选项
{
公共bool正在接受{get;set;}
}
如何在C#中分配ID、特殊ID和选项?如果我只使用
firstname和lastname,它工作得很好。但是如果我使用
其他人,我犯了错误。请帮助我按照分配此对象
上面提到的JSON
请记住,您并不是直接赋值,而是附加一个字符串列表项
IList<string> items = new IList<string>();
items.add("12");
IList items=new IList();
项目。添加(“12”);
您的JSON无效。“创建表时”firstName
“的引号不匹配”-这听起来像是SQLite的问题,而不是JSON.firstName JSON输入错误。现在我改正了。“创建表格时”-如果我删除ID、SpecialID和选项,工作正常。为什么在那个时候它还在工作。因此,我不认为SQLite(我的建议)有问题。您还没有发布实际生成错误的代码。请您将问题包括异常的完整ToString()
输出,包括异常类型、消息、完整回溯和内部异常(如果有)?