c# - Entity Framework 4.1 - 使用过滤器覆盖实体 (DBSet)

标签 c# entity-framework entity-framework-4.1 ef-code-first

我正在尝试做一些应该相对容易的事情,但我只是不知道如何构造它。

我有一个生成的实体,我想通过添加 Linq Where 语句来覆盖它。

特此为上下文部分:

public partial class MyEntities: DbContext
{
    public MyEntities()
        : base("name=MyEntities")
    {
    }    
    public DbSet<Assignee> Assignees { get; set; }
}

我创建了一个新的 MyEntities 部分并尝试了以下操作

public override DbSet<Assignee> Assignees 
{
    get
    {
        return this.Assignees.Where(z => z.IsActive == true);
    }
    set; 
}

但这会引发歧义错误(这是显而易见的)。

我怎样才能做到这一点?

谢谢

最佳答案

尝试公开 DbSet<Assignee>IQueryable<Assignee>有不同的名字

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);
        }
    }
}

关于c# - Entity Framework 4.1 - 使用过滤器覆盖实体 (DBSet),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8890987/

相关文章:

c# - WCF 服务代理未设置 "FieldSpecified"属性

c# - 使用 Entity Framework 4.1,如何使用不同的字段名称配置与复合键的一对多关系?

c# - 我的线性算法的缺陷在哪里

c# - 如何在 asp.net 中嵌入图表

c# - LinearGradientBrush 导致非平滑渐变位图

c# - MVC Seed 不将数据放入数据库

entity-framework - 如何使用 Visual Studio 2010 Express 连接到 SqlExpress for Entity Framework?

c# - razor view MVC c# 中 2 个后代模型的 Foreach 循环

entity-framework - 与 Entity Framework 代码一起使用的设计模式

entity-framework-4.1 - 在 Entity Framework 4.1 Code First 中创建双向关系