【发布时间】:2017-02-13 16:25:52
【问题描述】:
我正在阅读一些 JSON 并将其转换为动态列表。 以下是我的代码:
dynamic data = JObject.Parse(response);
var result = data.result;
var result = ((IEnumerable)arr).Cast<dynamic>().ToList();
var id = result[0].id;
var filtereddata = result.Where("id==1");
线
var filtereddata = result.Where("id==1");
在var id = result[0].id; 似乎工作时给出错误No property or field 'id' exists in type 'Object。
我正在解析的 JSON 是:
{
"count": 1,
"result": [
{
"id": 11,
"name": "Locations",
}]
}
如果需要更多信息,请告诉我。感谢您宝贵的时间。
编辑:
甚至尝试使用 lambda 表达式 var filtereddata = result.Where(c=>c.id==1).Select("id");,但仍然是同样的问题。
【问题讨论】:
-
我认为 Dynamic LINQ 不适用于
dynamic类型。 -
为什么是动态的?为什么不是poco? json2csharp.com
-
我不能使用 poco,并且确切的字段可能会有所不同。所以必须使用动态。如果有除 Dynamic Linq 之外的任何解决方案,我也可以检查一下
-
常规 LINQ 怎么样?例如
Where(x => x.id == 1). -
实际上我将 where 条件作为字符串“id==1”。所以这就是我使用动态 Linq 的原因
标签: c# linq dynamic dynamic-linq