如何使用 Linq 访问 jArray 中的元素

nmr*_*qa4 4 c# linq arrays json.net

我想将 jArray 的第一个或默认元素放入对象中

{[
  {
    "timex": "XXXX-08-25",
    "type": "date",
    "value": "2016-08-25"
  },
  {
    "timex": "XXXX-08-25",
    "type": "date",
    "value": "2017-08-25"
  }
]}
Run Code Online (Sandbox Code Playgroud)

(下一次调用时该数组可能会有所不同)如何使用 linq 从对象中的第一个元素获取“value”的值?此:“2016-08-25”

Ale*_*eev 7

您的 json 似乎无效,因为它以“{[”开头。在有效的 JSON 输入上,您可以使用以下代码:

var input = "[ {  \"timex\": \"XXXX-08-25\",\r\n    \"type\": \"date\",\r\n    \"va2lue\": \"2016-08-25\"\r\n  },\r\n  {\r\n    \"timex\": \"XXXX-08-25\",\r\n    \"type\": \"date\",\r\n    \"value\": \"2017-08-25\"\r\n  }\r\n]";
var jArray = JArray.Parse(input);
var result = jArray.FirstOrDefault()?["value"]?.Value<DateTime>();
Run Code Online (Sandbox Code Playgroud)