C# 如何在MVC视图中显示对象列表?
我有一个返回字符串列表的方法。我只想以纯文本的形式在视图中显示该列表 这是来自控制器的列表:C# 如何在MVC视图中显示对象列表?,c#,.net,asp.net-mvc,list,ienumerable,C#,.net,Asp.net Mvc,List,Ienumerable,我有一个返回字符串列表的方法。我只想以纯文本的形式在视图中显示该列表 这是来自控制器的列表: public class ServiceController : Controller { public string Service() { //Some code.......... List<string> Dates = new List<string>(); foreach (var row in d.R
public class ServiceController : Controller
{
public string Service()
{
//Some code..........
List<string> Dates = new List<string>();
foreach (var row in d.Rows)
{
Dates.Add(row[0]);
}
return Dates.ToString();
}
public ActionResult Service()
{
Service();
}
}
<table class="adminContent">
<tr>
<td>HEJ</td>
</tr>
<tr>
<td>@Html.Action("Service", "Service")</td>
</tr>
</tr>
</table>
公共类服务控制器:控制器
{
公共字符串服务()
{
//一些代码。。。。。。。。。。
列表日期=新列表();
foreach(变量行在d.Rows中)
{
日期。添加(第[0]行);
}
返回日期。ToString();
}
公共行动结果服务()
{
服务();
}
}
和视图:
public class ServiceController : Controller
{
public string Service()
{
//Some code..........
List<string> Dates = new List<string>();
foreach (var row in d.Rows)
{
Dates.Add(row[0]);
}
return Dates.ToString();
}
public ActionResult Service()
{
Service();
}
}
<table class="adminContent">
<tr>
<td>HEJ</td>
</tr>
<tr>
<td>@Html.Action("Service", "Service")</td>
</tr>
</tr>
</table>
嘿
@动作(“服务”、“服务”)
我想我必须在视图中执行一些操作,比如foreach循环,并使用“@”引用列表,但如何操作?您可以在视图中执行以下操作
@foreach (var item in @Model)
{
<li>@item.PropertName</li>
}
@foreach(@Model中的变量项)
{
@项目.属性名称
}
您的操作方法服务
应返回一个视图
。在此之后,将Service()方法的返回类型从string
更改为List
公共列表服务()
{
//一些代码。。。。。。。。。。
列表日期=新列表();
foreach(变量行在d.Rows中)
{
日期。添加(第[0]行);
}
返回日期;
}
公共行动结果统计()
{
返回视图(Service());
}
在此引用之后,视图中的模型:
@model List<string>
@foreach (var element in Model)
{
<p>@Html.DisplayFor(m => element)</p>
}
@型号列表
@foreach(模型中的var元素)
{
@DisplayFor(m=>element)
}
在我的示例中,ActionResult如下所示:
public ActionResult List()
{
List<string> Dates = new List<string>();
for (int i = 0; i < 20; i++)
{
Dates.Add(String.Format("String{0}", i));
}
return View(Dates);
}
public ActionResult List()
{
列表日期=新列表();
对于(int i=0;i<20;i++)
{
Add(String.Format(“String{0}”,i));
}
返回视图(日期);
}
其结果是:
你可以检查一下这个例子:实际上这很有道理。谢谢顺便问一下,for循环真的有必要吗?我的意思是,假设我们不知道manny项在列表中的位置,我可以做一个foreach循环,这样就不会有max结果了吗?或者:for(inti=0;i!=0;i++){Dates.Add(String.Format(“String{0}”,i));}返回视图(Dates);控制器中的for循环仅用于演示目的,以获取列表中的某些内容。你喜欢什么就用什么,你需要什么。我好像有问题。我已经有一个model@model ServiceListModel出现错误,我只能有一个model。完全正确。但是在你的问题中没有观点,所以没有人知道。另一方面:每个视图有一个控制器操作。一个控制器返回一个模型。