我有一個名爲RegisterViewModel視圖模型 -視圖模型沒有顯示相關數據
public class RegisterViewModel
{
public string UserName { get; set; }
public string Email { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
和兩個型號稱爲User和的UserDetails
public class User
{
[Key]
public string UserName { get; set; }
public string Email { get; set; }
public virtual ICollection<Role> Roles { get; set; }
public virtual UserDetails UserDetails { get; set; }
}
public class UserDetails
{
[Key]
public string UserName { get; set; }
public string Firstname { get; set; }
public string Lastname { get; set; }
[Required]
public virtual User User { get; set; }
}
在我的用戶控制器我已經在我的細節如下方法 -
public ViewResult Details(string id)
{
User user = context.Users
.Include (i => i.UserDetails)
.Where(i => i.UserName == id)
.Single();
user.UserDetails = new UserDetails();
RegisterViewModel viewModel = new RegisterViewModel{
UserName = user.UserName,
FirstName = user.UserDetails.FirstName,
LastName = user.UserDetails.LastName,
Salary = user.UserDetails.Salary,
Email = user.Email,
Roles = user.Roles
};
return View(viewModel);
}
在我的詳細信息視圖 -
@model TRS.ViewModels.RegisterViewModel
<table>
<tr>
<td>User Name</td>
<td>@Model.UserName</td>
</tr>
<tr>
<td>Email</td>
<td>@Model.Email</td>
</tr>
<tr>
<td>First Name</td>
<td>@Model.FirstName</td>
</tr>
<tr>
<td>Last Name</td>
<td>@Model.LastName</td>
</tr>
<tr>
<td>Roles</td>
<td>@foreach (Role role in Model.Roles) {
@role.RoleName<br />
}</td>
</tr>
但我只是從用戶模型獲取日期,沒有UserDetails。所以我可以看到用戶名,電子郵件和羅爾,但不是第一個或最後一個名字。
你能看到我在這裏出錯了嗎?
感謝