C# 无法访问c中的jObject令牌#

C# 无法访问c中的jObject令牌#,c#,arrays,json,json.net,C#,Arrays,Json,Json.net,我有以下名为“originalJson”的json { "user_active": true, "user_firstname": "Bob", "user_lastname": "Tester", "user_displayname": "Bobby", "user_primary_email": "

我有以下名为“originalJson”的json

{  
  "user_active": true,
  "user_firstname": "Bob",
  "user_lastname": "Tester",
  "user_displayname": "Bobby",
  "user_primary_email": "bob@tester.com",
  "user_login_enabled": true,
  "user_profile": {
       "user_locale": "en-gb",
       "user_lang": "en-gb"
   },
   "user_identities": [],
   "user_roles": [
   {
        "app_id": "74a019c9-7171-4af0-a773-3984edaa35ca",
        "context_uuid": "74a019c9-7171-4af0-a773-3984edaa35ca",
        "context_type": "context_application",
        "role_oid": "test_role_a",
        "role_start_date": "2020-06-27T13:00:00Z",
        "role_end_date": "2021-06-27T13:00:00Z"
    }
  ]
 }
我正在尝试替换role\u start\u date和role\u end\u date值

我试过以下方法

JObject jObj = JObject.Parse(originalJson);

jObj["user_roles"]["role_start_date"] = somenewstartDate;
jObj["user_roles"]["role_end_date"] = somenewendDate;
但是它失败了,并且不喜欢“jObj[“user\u roles”][“role\u start\u date”]”。我想这很简单,我一定错过了什么

有什么想法吗?

属性“用户角色”是一个对象数组,而不是单个对象。您正试图在该数组的第一个条目中设置属性值,因此需要执行以下操作:

jObj["user_roles"][0]["role_start_date"] = somenewstartDate;
jObj["user_roles"][0]["role_end_date"] = somenewendDate;

“用户角色”
是一个对象数组,jObj[“用户角色”][0][“角色开始日期”]=somenewstartDate非常好,回答得很快,非常感谢。非常感谢。