C# 如何将简单列表传递到视图
我有一些类似的东西:C# 如何将简单列表传递到视图,c#,asp.net-mvc,asp.net-mvc-4,C#,Asp.net Mvc,Asp.net Mvc 4,我有一些类似的东西: @model List<string> @{ ViewBag.Title = "Details"; } <h2>Details</h2><div> <hr /> <dl class="dl-horizontal"> <dt> @Html.DisplayName("Name") </dt> <dd> @
@model List<string>
@{
ViewBag.Title = "Details";
}
<h2>Details</h2><div>
<hr />
<dl class="dl-horizontal">
<dt>
@Html.DisplayName("Name")
</dt>
<dd>
@Html.DisplayFor(model => model.ElementAt(0))
</dd>
<dt>
@Html.DisplayName("Document")
</dt>
<dd>
@Html.DisplayFor(model => model.ElementAt(1))
</dd>
</dl></div><p>
@Html.ActionLink("Edit", "Edit", new { /* id = Model.PrimaryKey */ }) |
@Html.ActionLink("Back to List", "Index")
我知道这是错误的,但如何从列表中提取2个元素?您可以在控制器中使用以下代码:
public ActionResult Index()
{
var sampleList = new List<Tuple<string,string>>()
{
new Tuple<string, string>("Amir","Niasari"),
new Tuple<string, string>("Mehdi","Irani")
};
return View(sampleList);
}
然后考虑到:
@模型列表
@{
模型中的foreach var v
{
@v、 Item1,@v.Item2
}
}你想干什么?是否只想在视图中显示这两个值?是的,从我传递到的列表View@foreachvar模型{@item}中的项将显示2个值。但是@Html.DisplayNameName和@Html.DisplayNameDocument是做什么的呢?你应该创建一个ViewModel。然后你的模型不应该是列表的,它需要是一个具有两个属性的模型,字符串名称和字符串文档,并使用@Html.DisplayNameForm=>m.Name@Html.DisplayForm=>m.Name同上来创建文档是的,我知道这个方法,但我应该有一个类似于Name1:value1、name2:value2的视图,等等