Asp.net mvc 在mvc中与模板一起使用Html.DisplayFor
我有一个模型Asp.net mvc 在mvc中与模板一起使用Html.DisplayFor,asp.net-mvc,templates,html-helper,Asp.net Mvc,Templates,Html Helper,我有一个模型 public class Person { public string Name { get; set; } public int Age { get; set; } } 和一个简单的观点 <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<IList<Site.Models.Person>>" %> <html xmlns="http://www.w3.org
public class Person {
public string Name { get; set; }
public int Age { get; set; }
}
和一个简单的观点
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<IList<Site.Models.Person>>" %>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
</head>
<body>
<% for (int i = 0 ; i < Model.Count ; i++) { %>
<%: Html.DisplayFor(m => m[i])%>
<% } %>
</body>
</html>
偏袒
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Site.Models.Person>" %>
<h1>A person</h1>
<div>Name: <%: Html.DisplayFor(x => x.Name)%></div>
<div>Age: <%: Html.DisplayFor(x => x.Age)%></div>
和单控制器
public ActionResult Index () {
Person p1 = new Person { Age = 18 , Name = "jon" };
Person p2 = new Person { Age = 23 , Name = "bob" };
return View(new List<Person> { p1 , p2 });
}
视图中的Displayfor应显示使用部分视图中指定的模板显示的每个人,但不是。感谢您的帮助部分视图名称必须是Person.ascx,放在shared\DisplayTemplates文件夹中部分视图名称必须是Person.ascx,放在shared\DisplayTemplates文件夹中。我想当我读这篇文章时,我读得不够好。谢谢:这就成功了。我想当我读这篇文章时,我读得不够好。谢谢: