0
我在我的代码如下枚举:枚举呈现在MVC 3查看字符串表示
Public Enum UserSearchFields
LastName
FirstName
Email
UniqueID
End Enum
我尝试填充在与此枚举值视图中的下拉列表:
<select id="search_type">
<option value="@UserSearchFields.LastName" selected="selected">Last Name</option>
<option value="@UserSearchFields.FirstName">First Name</option>
<option value="@UserSearchFields.Email">E-mail</option>
<option value="@UserSearchFields.UniqueID">Unique ID</option>
</select>
但由于某种原因,当呈现页面时,值字段包含枚举数的字符串表示形式,而不是基础的整数值。例如,选项值字段将是“LastName”而不是“0”...为什么会出现这种情况,我是否犯了某种错误?
P.S.我知道我可以从一个枚举器中填充一个下拉列表,如How do you create a dropdownlist from an enum in ASP.NET MVC?,但我只想知道为什么会发生这个问题?
我会推荐让它保持原样!使用Enum中的“字符串”值是最佳推荐做法。另外,MVC会自动将该值正确地映射回您的模型。 – 2011-12-15 00:03:39
另外,“Enum”是“Enumeration”的缩写,而不是“Enumerator”......在.NET中,区别很大,因此您可能想重新提出问题。 – 2011-12-15 00:05:06