实体框架从数据库中删除self

时间:2016-11-11 14:41:57

标签: c# entity-framework entity-framework-6

我对Entity Framework相对较新,但到目前为止,我在Stackoverflow上找到了所有答案的问题,除了我将在下面解释的内容。

假设我有一个由实体框架生成的类Person,如下所示:

public partial class Person
{
    public int Id { get; set; }
    public string Name { get; set; }
}

现在我想通过使用以下代码删除一个人:

using(databaseEntities db = new databaseEntities())
{
    Person person = db.Person.First(p => p.Id = 1);
    person.Remove();
}

因此我创建了一个带有remove方法的分部类。

public partial class Person
{
    public void Remove()
    {
        using(databaseEntities db = new databaseEntities())
        {
            Person person = db.Person.First(p => p.Id == this.Id);
            db.Person.Remove(person);
            db.SaveChanges();
        }
    }
}

但是,现在我正在从数据库中删除此人,但它正在不同的上下文中删除。

我如何重写Person.Remove()方法,以便将其从同一个databaseContext中删除?

0 个答案:

没有答案