我正在使用.NET 3.5
我有一个Company.cs对象列表。
我想用LINQ动态填写此列表,这意味着用户在文本框中输入此字符串:
(CompanyName = "Google") OR
(Country = "Czech Republic") or
(CompanyName = "Microsoft") AND
(Country = "USA")
如何将此字符串与linq和.Where()子句一起使用来过滤现有的公司对象?
或者使用DataTable并使用Select方法是否更好?
答案 0 :(得分:-2)
编辑:
对不起,我误解了你。
如果您有公司和国家/地区列表,请执行以下操作:
var compNames = new[] { "Boo", "Foo" };
var countries = new[] { "Germany", "Bubu" };
然后你可以像这样过滤:
from c in companies
where compNames.Contains(c.Name) || countries.Contains(c.Country)
select c