我正在为客户端使用Entity Framework Core(EFC)替换NHibernate(NH),并遇到了以下砖墙复制NH的筛选后的HasMany映射。
例如,从现有的NH实体图类中进行释义:
HasMany(x => x.Children)
.Where("ChildStatus = 1 and ChildType = 2")
.KeyColumn("ParentId");
我已经可以使用显式加载来做到这一点...
var kids = context.Entry(parent)
.Collection(c =>c.Children)
.Query()
.Where(q => q.ChildStatus == 1 && q.ChildType == 2)
.ToList();
...但是我想通过上下文类中的映射来进行此操作(就像NH一样),因此我不必重构存储库类中的所有Get。但是,当前的EFC版本似乎不支持此功能。
我是对的还是解决方案?