不知道這是否是你之後,但我使用一個名爲Web.Shared我自己的類庫持有我所有的輔助方法的東西。我有一個SelectListHelper類,我用它來填充我所有的下拉列表。這樣我的代碼就可以從主域模型中分離出來,並且可以通過這個和任何其他MVC應用程序重用,這是我解決方案的一部分。
// Return days of the month for a dropdownlist
public static class SelectListHelper
{
public static SelectList DayList()
{
return NumberList(1, 31);
}
}
// Use in view
@Html.DropDownListFor(m => m.Day, SelectListHelper.DayList())
// Another one for selecting genders
public static SelectList GenderList(string selectedValue = null)
{
IList<KeyValuePair<string, string>> genders = new List<KeyValuePair<string, string>>();
genders.Insert(0, new KeyValuePair<string, string>("F", "Female"));
genders.Insert(0, new KeyValuePair<string, string>("M", "Male"));
genders.Insert(0, new KeyValuePair<string, string>("", "Choose Gender"));
return new SelectList(genders, "Key", "Value", selectedValue);
}
// Use in my edit view
@Html.DropDownListFor(m => m.Gender, SelectListHelper.GenderList())
如果不能這樣做,請參閱MVC Scaffolding以創建數據綁定的CRUD視圖。
你能舉一個你的類的例子嗎? – 2011-02-15 19:31:03
@Daniel T. - 此刻我還沒有寫任何東西。我在繪製圖表和通過示例/教程時遇到了這個問題。 – 2011-02-15 20:49:29