.net expando对象和LINQ.可能与否?

ala*_*inb 6 .net linq expandoobject

我有一个名为products的expando对象的简单列表.

我在运行时向这些对象添加各种字段(例如颜色或大小)

如何根据动态字段在此列表上编写LINQ查询?

使用经典的对象列表,我可以编写如下的LINQ查询:

From item in Products Where item.color="red" select item
Run Code Online (Sandbox Code Playgroud)

但是对于expandos,如何实现这一点,知道我事先并不知道字段的名称(它可能是重量或其他任何东西)?

先感谢您.

Gha*_*uni 6

expando对象实现IDictionary(Of String,Object)因此,您可以将其强制转换为IDictionary并通过传递字符串来访问它的属性.