2016-02-11 63 views
0

我有2個數據庫表不在我的控制下,需要在我的MVC項目中鏈接。鏈接是1對多的(1 = PoolList,Many = ClassA)。ASP MVC 5-Link 2模型共同使用一個共同的字段

第一種模式:

public partial class ClassA 
{ 
    public int lg_ID { get; set; }   
    public string lg_pool { get; set; } 
    public string carpet { get; set; }   
} 

第二種模式(此表是lg_pool的的不同列表):

public partial class PoolList 
{ 
    public int lg_pool_ID { get; set; }   
    public string lg_pool { get; set; } 
} 

我想給ClassA.lg_pool鏈接到PoolList.lg_pool。期望的是讓類別A的視圖顯示僅包含lg_pool值的下拉列表。

我知道DataAnnotations鍵/ ForeignKey的存在,但我不知道如何來的時候,因爲它不是在ClassA的模型包含的PoolList.lg_pool_ID場是無關緊要的鏈接。

回答

0

C#Asp.Net Mvc不支持將兩個模型傳遞給視圖。但是你可以有一個模型視圖,它包含兩個模型並將其傳遞給視圖。在下面的示例中,您可以將ViewModelAB傳遞給視圖。

class A 
{ 
} 
class B 
{ 
} 

class ViewModelAB 
{ 
    A _A{set;get;} 
    List<B> _Bs{set;get;} 
} 
+0

Hi @Bewar。我只想顯示ClassA的視圖。視圖上的'lg_pool'字段應該是從PoolList中拉出的下拉列表。 –

+0

好的,你仍然需要一個包含兩個類的ViewModel,一個是lg_pool,另一個是用於填充下拉列表的poolList。 –

0

以這種方式在第二主體模型中繼承前面的模型屬性。

Public class modelA 
{ 
} 
Public class modelB : modelA 
{ 
} 
相關問題