LINQKit首先预测代码

时间:2013-10-23 19:47:11

标签: c#-4.0 ef-code-first predicatebuilder linqkit

我已阅读此内容(http://www.albahari.com/nutshell/predicatebuilder.aspx

这是我的代码:

var predicateOuter = PredicateBuilder.True<T_Users>();
predicateOuter.And(d => d.code== 357);
var count=tService.GetCount(predicateOuter.Expand());

我的代码服务首先:

public int GetCountSearch(Expression<Func<T, bool>> exp)
{
    return _entities.Count(exp);
}

T_Users中的所有记录:6548

所有记录code==357:26

但它总是返回所有记录。但为什么呢?

1 个答案:

答案 0 :(得分:1)

您需要使用Add

的结果
// Assign result here to predicateOuter -
predicateOuter = predicateOuter.And(d => d.code== 357);

// This should now function properly
var count = tService.GetCount(predicateOuter.Expand());

Add不修改谓词,而是返回带有附加条件的新谓词。