0

所以我有一个格式错误的模式,由于很多遗留代码依赖关系,我现在无法触及。

假设我有一个表 Test 并且它有一个声明为 int 类型的 IsValid 列。

我希望 poco 域对象具有 IsValid 作为布尔值的正确意图。在我的存储库中应用查询时,我希望它在查询中正确解析。

.Where(o => o.IsValid == true)

应解决:

where isvalid = 1

EntityTypeConfiguration 是否可以以这种方式映射,或者我是否必须创建一个自定义表达式解析器来查找存储库中的特殊情况(我不想这样做)?还是有另一种方法(不暴露域对象上的多个属性)?

谢谢!

4

1 回答 1

0

您可以创建一个查询扩展方法来封装此代码:

public static IQueryable<YourEntity> ThatAreValid(this IQueryable<YourEntity> source) {
    return source.Where(x => x.IsValid == 1);
}

// usage

return entities.ThatAreValid();
于 2011-06-28T18:40:42.187 回答