我在做我的MVC应用程序。我通过实体框架将它连接到我的数据库。在我的控制器中,我运行这样的视图:
public ActionResult MyMarks()
{
ClassDeclarationsDBEntities1 entities=new ClassDeclarationsDBEntities1();
return View(entities.Users.ToList());
}
我的观点是:
@using ClassDeclarationsThsesis.Models
@using Microsoft.AspNet.Identity
@{
ViewBag.Title = "My Marks";
}
<div>
<h4>Account information</h4>
<hr/>
<dl class="dl-horizontal">
<dt>Name</dt>
<dd>Student's name</dd>
<dd></dd>
<dt>Surname</dt>
<dd>Student's surname</dd>
<dt>Email</dt>
<dd>
@HttpContext.Current.User.Identity.Name
</dd>
</dl>
</div>
如何用构造函数中传递的实体的实际数据替换学生的姓名和姓氏?
答案 0 :(得分:2)
在视图List<Users>
@using ClassDeclarationsThsesis.Models
@using Microsoft.AspNet.Identity
@model List<Users>
@{
ViewBag.Title = "My Marks";
}
<div>
<h4>Account information</h4>
<hr/>
@foreach(var student in Model)
{
<dl class="dl-horizontal">
<dt>Name</dt>
<dd>@student.Name</dd>
<dd></dd>
<dt>Surname</dt>
<dd>@student.surname</dd>
<dt>@student.Email</dt>
<dd>
@HttpContext.Current.User.Identity.Name
</dd>
</dl>
}
</div>
答案 1 :(得分:1)
在视图顶部添加此内容
@model List<Users> // you must resolve the namespace like YourProject.Users
这指定了您的视图所期望的模型类型。由于您要传递entities.Users.ToList()
,我们将视图设置为接受相同的视图。
现在要显示记录,我们可以执行foreach
循环并在每次迭代中访问数据。比如
@foreach(var user in Model)
{
<dt>Name</dt>
<dd>@user.name</dd>
}
答案 2 :(得分:1)
由于您的控制器请求是Users object
的列表,因此需要IEnumerable<ClassDeclarationsThsesis.Models.Users>
模型接受它。
@model IEnumerable<ClassDeclarationsThsesis.Models.Users>
@using Microsoft.AspNet.Identity
@{
ViewBag.Title = "My Marks";
}
<div>
<h4>Account information</h4>
<hr/>
<table>
<tr>
<th>Name</th>
<th>Sure name</th>
<th>Email</th>
</tr>
foreach(var student in Model)
{
<tr>
<td>@student.Name</td>
<td>@student.SurName</td>
<td>@student.Email</td>
</tr>
}
</table>