我有一个表上有一个字段的约束 - 它可以是1,2或3.(正确的解决方案可能是为此创建查找表,但现在我想知道是否可以在没有查找表的情况下执行此操作。)asp.net mvc和linq to entities:如何从IEnumerable <SelectListItem>包含文本值
我创建了一个返回IEnumerable值的类。我正在使用LINQ to Entities,并希望能够在col中显示文本值。列出所有实体时。
用于创建/编辑代码如下:
Controller.cs:
ViewData["Message_Types"] = MessageTypes.MessageTypeList;
edit.aspx:
<%= Html.DropDownList("Message_Type",(IEnumerable<SelectListItem>)ViewData["Message_Types"]) %>
和默认的模型绑定就好用TryModelUpdate作品:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(int id, FormCollection form)
{
...
TryUpdateModel(editItem, new string[] { "Message_Type" });
...
}
如何然而,我想显示的文本值,而不是数值的:
的Index.aspx:
<td>
<%= Html.Encode(item.Message_Type) %>
</td>
我怎样才能获得对应的项目元素的文本值。 Message_type?
更新:
消息类型的样子:
public static IEnumerable<SelectListItem> MessageTypeList
{
get
{
return new[] {
new SelectListItem{ Text = "Text Value 1", Value="1" },
new SelectListItem{ Text = "Text Value 2", Value="2" },
new SelectListItem{ Text = "Text Value 3", Value="3" }
};
}
}
什么文本元素?给我们这个文本元素的例子。 – LukLed 2009-11-23 21:11:51