2013-01-17 92 views
0

所以我相當新的MVC所以請我在這裏裸....但是我有兩個型號:比較數據

public class Resort 
{ 
    public int ID { get; set; } 
    public String Name { get; set; } 
    public int BlackDiamond { get; set; } 
    public int BlueSquare { get; set; } 
    public int GreenCircle { get; set; } 
    public int TerrainPark { get; set; } 
} 

而且

public class Input 
{ 
    public int ID { get; set; } 
    public string Name { get; set; } 
    public bool GreenCircle { get; set; } 
    public bool BlueSquare { get; set; } 
    public bool BlackDiamond { get; set; } 
    public bool TerrainPark { get; set; } 
} 

的這裏的想法是創建一個控制器,使我可以訪問這兩個模型的數據,因爲我的邏輯基本上允許我搜索所有度假村,尋找具有最高優先級的度假村的度假村。舉個例子,假設我更喜歡BlackDiamonds,所以我想要搜索擁有最多BlackDiamonds的度假村。所以我需要知道哪些經驗水平是首選,哪個度假村的首選經驗水平最高。

但是,我不知道如何去這樣做......

+0

要清楚,您要求的控制器代碼,是否正確? –

+0

我不知道裸體如何幫助,但如果你這樣說! – DeanOC

+0

是的,我要求控制器代碼,但我也可以在概念上使用一些幫助。我需要保存第一度假村的黑鑽石價值,然後將其與下一個相比較,如果它比舊的更高,則用新的價格覆蓋舊價格,因此我需要遍歷每個度假村。 – Jfabs

回答

1

你可以定義一個視圖模型彙總這些2種型號:

public class MyViewModel 
{ 
    public Input Input { get; set; } 
    public Resort Resort { get; set; } 
} 

現在控制器操作可以採取/通過這個將視圖模型從視圖模型強制輸入到視圖模型。現在你將擁有所有必要的數據。

+0

這是否允許我通過點符號引用每個單獨的模型及其特定屬性:Input.Name ?? – Jfabs

+0

你可以給我一個例子,說明如何在應用程序的上下文中使用它? – Jfabs

+0

是的,您可以使用點符號來訪問視圖中的這些屬性。將視圖模型傳遞給視圖後,您可以輕鬆引用其任何屬性。例如:'@ Html.CheckBoxFor(x => x.Input.BlueSquare)'。 –