过去一周的大部分时间都花在了MVC2的新模板功能上.我很难尝试使用DropDownList模板.我一直在努力解决的最大问题是如何将下拉列表的源数据提供给模板.我看了很多例子,你可以将源数据放在ViewData字典中(ViewData ["DropDownSourceValuesKey"])然后在模板本身中检索它们(var sourceValues = ViewData ["DropDownSourceValuesKey"];)这样可行,但我做了不喜欢有一个愚蠢的字符串作为使这项工作的lynch引脚.
以下是我提出的一种方法,希望对此方法有所了解:
这是我的设计目标:
这是我的视图模型:
public class CustomerViewModel
{
[ScaffoldColumn(false)]
public String CustomerCode{ get; set; }
[UIHint("DropDownList")]
[DropDownList(DropDownListTargetProperty = "CustomerCode"]
[DisplayName("Customer Code")]
public IEnumerable<SelectListItem> CustomerCodeList { get; set; }
public String FirstName { get; set; }
public String LastName { get; set; }
public String PhoneNumber { get; set; }
public String Address1 { get; set; }
public String Address2 { get; set; }
public String City { get; set; }
public …Run Code Online (Sandbox Code Playgroud)