我在我的项目中使用Newtonsoft.Json
。我有JObject
这样的话:
{
"4781":"Name 1",
"1577":"Name 2",
"9973":"Name 3"
}
我用JObject.Parse()
成功解析了它。我需要从这个JObject获得第一个键(" 4781")。我怎么得到它?
答案 0 :(得分:7)
Json.NET不提供对<form:select path="country" items="${countryList}" />
属性的整数索引访问。
如果您JObject
JObject.Parse()[0]
,则会收到ArgumentException
消息
使用无效键值访问JObject值:0。期望对象属性名称。&#34;
我怀疑Json.NET是以这种方式实现的,因为JSON standard状态&#34; 对象是一组无序名称/值对。 &#34;
所以,如果你想要第一个属性名,你应该使用LINQ:
using System;
using System.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
var obj = JObject.Parse(json);
var firstName = obj.Properties().Select(p => p.Name).FirstOrDefault();