Joh*_*n S 4 linq entity-framework predicatebuilder
我有一个我需要在表中匹配的部分字符串列表.我正在使用PredicateBuilder.
var predicate = PredicateBuilder.False<Name>();
List<string> names = new List<string>();
names.Add("test name"); **<===matches**
names.Add("test"); **<=== doesn't match**
predicate = predicate.Or(n => names.Contains(n.Company));
var results = (from n in Names
.AsExpandable()
.Where(predicate)
select(new{ n.Company}));
Run Code Online (Sandbox Code Playgroud)
n.Company ="测试名称"
如果n.Company正好是"测试名称",那么这将匹配,但如果我只使用"test"则它不匹配.如何匹配列表中的部分.包含?
你应该这样改变你的代码
var predicate = PredicateBuilder.False<Name>();
List<string> names = new List<string>();
names.Add("test name");
names.Add("test");
foreach(string name in names)
{
string temp = name;
predicate = predicate.Or(n => n.Company.Contains(temp));
}
var results = (from n in Names
.AsExpandable()
.Where(predicate)
select(new{ n.Company}));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1150 次 |
| 最近记录: |