本文介绍了实体框架4.1 - 覆盖实体(DBSet)与过滤器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图做一些应该是比较容易的,但我只是不知道如何构建它。
I'm trying to do something which should be relatively easy, but i just dont know how to construct it.
我有一个生成的实体,我想想加入一个LINQ Where语句覆盖。
I have a Generated Entity which I'd like to override by adding a Linq Where statement.
谨此部分的上下文:
public partial class MyEntities: DbContext
{
public MyEntities()
: base("name=MyEntities")
{
}
public DbSet<Assignee> Assignees { get; set; }
}
我创建了一个新的部分MyEntities和尝试以下
I've created a new partial of MyEntities and tried the following
public override DbSet<Assignee> Assignees
{
get
{
return this.Assignees.Where(z => z.IsActive == true);
}
set;
}
不过,这将引发多义性错误(这是很明显)。
but this throws an ambiguity error (which is obvious).
我怎样才能做到这一点?
How can I accomplish this?
感谢
推荐答案
试着露出 DbSet<受让人GT;
和的IQueryable<受让人GT;
以不同的名称
Try exposing DbSet<Assignee>
and IQueryable<Assignee>
with different names
public partial class MyEntities: DbContext
{
public MyEntities()
: base("name=MyEntities")
{
}
public DbSet<Assignee> AssigneesSet { get; set; }
public IQueryable<Assignee> Assignees
{
get
{
return AssigneesSet.Where(z => z.IsActive == true);
}
}
}
这篇关于实体框架4.1 - 覆盖实体(DBSet)与过滤器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!