1
將所有數據傳遞給視圖的一種普遍接受的方式是使用一個數據模型,並引用您的域模型以及諸如下拉列表(DDL)之類的其他數據。ASP.NET MVC 2:使用[Data Annotations]來引用可能提供DDL列表的方法?
但是,部分視圖(視圖模板也)只接收主模型的一部分,無法訪問發送到原始視圖的模型的根。因此,如果您的DDL列表不是靜態的,那麼部分視圖如何獲取數據?
有沒有一種方法使用[數據註釋]來引用一個方法,該方法可以返回一個字段的可能值,然後在局部視圖的DDL中使用它?存儲庫中此方法的存在位置?
鏈接或C#代碼示例將非常有幫助。
我會認爲靜態方法要麼在存儲庫中,要麼是訪問存儲庫的服務。我會假設一個視圖不允許直接訪問這個服務。但是,我想知道輔助方法是否可以直接訪問服務層中的數據而不會違反視圖的關注?如果是這樣,這是一個很好的答案:使用直接訪問服務層的輔助方法來創建自定義的DDL,如Html.CityDropDownList()。 – 2010-07-19 18:30:16