c#从json字符串到对象

c#从json字符串到对象,c#,json,C#,Json,如何从这个json字符串创建对象 就是这个功能 我试过这个 items f = API.shared.fromJson(myString).ToObject<items>(); 错误: Newtonsoft.Json.JsonReaderException: Invalid property identifier character: [. Path '', line 1, position 1. 我相信你的json字符串有点不正确。应将其声明为“键/值”对: {[

如何从这个json字符串创建对象

就是这个功能

我试过这个

   items f = API.shared.fromJson(myString).ToObject<items>();
错误:

    Newtonsoft.Json.JsonReaderException: Invalid property identifier character: [. Path '', line 1, position 1.

我相信你的json字符串有点不正确。应将其声明为“键/值”对:
{[“名称”:“测试项目2”,“重量”:2,“型号”:1337,“scala”:1,“id”:2,“右键点击”:“Użyj测试2”]……]}


不幸的是,您的JSON是数组的数组,您试图将其转换为对象列表。您可以这样更改JSON吗:

[{"name": "Test item 2", "weight": 2, "model": 1337, "scala": 1, "id": 2, "rightClick": "Użyj test2"}, {...}]

如果您必须使用共享的json。有一种方法可以解析这个json

var jsonStr = "[[\"Test item 2\",2,1337,1,2,\"Użyj test2\"],[\"Test item 1\",2,1337,1,1,\"Użyj test1\"]]";
            dynamic parsedObjectList = JsonConvert.DeserializeObject(jsonStr);
            parsedObjectList = (IEnumerable)parsedObjectList;
            List<items> itemsList = new List<items>();
            foreach (var itemList in parsedObjectList)
            {
                var item = new items();
                item.name = itemList[0];
                item.weight = itemList[1];
                item.model = itemList[2];
                item.scala = itemList[3];
                item.id = itemList[4];
                item.rightClick = itemList[5];
                itemsList.Add(item);
            }
var jsonStr=“[\“测试项目2\”,21337,1,2,\“Użyj测试2\”],[\“测试项目1\”,21337,1,1,\“Użyj测试1\”]”;
动态parsedObjectList=JsonConvert.DeserializeObject(jsonStr);
parsedObjectList=(IEnumerable)parsedObjectList;
列表项列表=新列表();
foreach(parsedObjectList中的var itemList)
{
var item=新项目();
item.name=itemList[0];
item.weight=项目列表[1];
item.model=itemList[2];
item.scala=itemList[3];
item.id=itemList[4];
item.rightClick=itemList[5];
项目列表。添加(项目);
}

使用泛型类型
System.Collections.generic.IEnumerableT>“需要
1”类型参数您是否使用System.Collections和Using System.Collections.generic添加了这些参数?
[{"name": "Test item 2", "weight": 2, "model": 1337, "scala": 1, "id": 2, "rightClick": "Użyj test2"}, {...}]
var jsonStr = "[[\"Test item 2\",2,1337,1,2,\"Użyj test2\"],[\"Test item 1\",2,1337,1,1,\"Użyj test1\"]]";
            dynamic parsedObjectList = JsonConvert.DeserializeObject(jsonStr);
            parsedObjectList = (IEnumerable)parsedObjectList;
            List<items> itemsList = new List<items>();
            foreach (var itemList in parsedObjectList)
            {
                var item = new items();
                item.name = itemList[0];
                item.weight = itemList[1];
                item.model = itemList[2];
                item.scala = itemList[3];
                item.id = itemList[4];
                item.rightClick = itemList[5];
                itemsList.Add(item);
            }