2016-12-23 186 views
-3

我在做我的MVC应用程序。我通过实体框架将它连接到我的数据库。在我的控制器我会像这样的观点:从数据库中读取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

您推荐从数据库构建学生模型,然后传递此模型以查看并在视图内呈现所需的字段。 – tym32167

+1

你应该阅读关于ASP.NET MVC的基础知识。例如如何传递模型来查看。 –

回答

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

在您的视图的顶部添加此

@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> 
} 
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>