2016-12-23 44 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>