2014-10-06 55 views
0

我不確定以下概念的名稱是什麼,這是有問題的,因爲我試圖在我的實體框架域模型中實現它(我的信譽不夠高發表圖片,即使它是有用的!):將兩個一對多關係建模爲一個

Permit - 有很多 - >OfficePermit - 有很多 - >Task

本質上講,這是Permit之間的一個一對多的關係, Task我想用我的許可域模型上的集合導航屬性ICollection<Task> Tasks來表示它。

我不想在ViewModel層實現這個作爲額外的屬性,因爲我依靠實體框架生成的元數據在客戶端使用(使用Breeze.js)。我將如何着手在我的領域模型中表達這種關係 - 這甚至有可能嗎?

回答

0

你可以做這樣的...

public class Permit 
{ 
    public Permit() 
    { 
     this.PermitId = Guid.NewGuid().ToString(); 
    } 

    public string PermitId { get; set; } 

    public ICollection<OfficePermit> OfficePermits { get; set; } 
} 

public class OfficePermit 
{ 
    public OfficePermit() 
    { 
     this.OfficePermitId = Guid.NewGuid().ToString(); 
    } 

    public string OfficePermitId { get; set; } 

    public string PermitId { get; set; } 

    public Permit Permit { get; set; } 

    public ICollection<@Task> Tasks { get; set; } 
} 

public class @Task 
{ 
    public Task() 
    { 
     this.TaskId = Guid.NewGuid().ToString(); 
    } 

    public string TaskId { get; set; } 

    public OfficePermit OfficePermit { get; set; } 

    public string OfficePermitId { get; set; } 
} 
+0

這就是我現在有。我想要的是在'Permit'對象上擁有'Tasks'導航屬性,而不必通過許可證的OfficePermits導航屬性檢索許可證的任務。不管怎麼說,還是要謝謝你。 – 2014-10-06 20:17:27

相關問題