1
我使用EF模型首先,在我Employee
類我有一個Manager
酒店,擁有1對1的關係,以自身的Employee
類:如何在實體框架中刪除具有1對1關係的相關對象?
public partial class Employee
{
public Employee()
{
}
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public virtual Employee Manager { get; set; }
}
現在,當我從數據庫中獲取現有對象並改變經理與:
employee.Manager = otherEmployeeInstance;
Context.Entry(employee).State = System.Data.EntityState.Modified;
Context.SaveChanges();
它工作得很好;但是,如果我想刪除的管理員,這將不起作用:
employee.Manager = null;
在我看來,我首先需要「負載」經理(員工)的實例爲,因爲這使得背景下它的工作:
var dummyVar = employee.Manager.Id;
employee.Manager = null;
所以問題是,什麼是最好的(適當)的方式來刪除相關的對象?
隨着模型的第一,VS2010生成POCO對象。正如你在我的代碼中看到的,Employee不具有remove方法。我錯過了別的嗎? – Ulises
不是遠程方法。但實體之間的任何關係在這裏都是相當大在這個問題中,任何設計方法(如模型優先或代碼優先)都沒有區別。確保在刪除實體之前刪除了任何相關屬性。 –
你是指「在刪除實體之前確保刪除了任何相關屬性」?就我而言,我想取消關係,因爲員工可能不再是經理的下屬。但是,我不想從數據庫中刪除「管理器」實例。 – Ulises