我有一个名为products的expando对象的简单列表。
我在运行时向这些对象添加各种字段(例如颜色或大小)
如何根据动态字段在此列表中编写LINQ查询?
使用经典的对象列表,我可以编写如下的LINQ查询:
From item in Products Where item.color="red" select item
但是对于expandos,如何实现这一点,知道我事先并不知道字段的名称(可能是重量或其他任何东西)?
提前谢谢。
答案 0 :(得分:6)
expando对象实现IDictionary(Of String,Object) 因此,您可以将其强制转换为IDictionary,并通过传递字符串来访问它的属性。
答案 1 :(得分:0)
您可以像这样编写代码: 从产品中的项目(项目为动态).color =“红色”选择项目