0
私はMVCテンプレートを使用しており、User、Role、UserRoleのモデルとテーブルを持っています。権限を追加して問題なく削除できますが、現在のUserRolesをインデックスビューに表示すると、ロール名はそのユーザーのロールの名前ではなく、リスト内で順番になります。ビュー内のロール名UserRoleモデルとコントローラのRoleIDを一致させない
私のコントローラは
public ActionResult Index()
{
var userroles = db.UserRoles.Include(u => u.Users).Include(u => u.Roles).ToList();
return View(userroles);
}
非常に単純明快であり、ここで私の見解は
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.RoleId)
</td>
<td>
@Html.DisplayFor(modelItem => item.Users.DisplayName)
</td>
<td>
@Html.DisplayFor(modelItem => item.Roles.Name)
</td>
RoleIDが表示され、ユーザーのために正しいですが、item.Roles.Nameがあるが落ちる場所です次の項目がRolesテーブル内に順番に並んでいるかどうかを確認します。私はここで何が欠けていますか?
public partial class UserRole
{
[Key]
[Column(Order = 0)]
public int UserId { get; set; }
[Key]
[Column(Order = 1)]
public int RoleId { get; set; }
public string ApplicationName { get; set; }
public virtual User Users { get; set; }
public virtual Role Roles { get; set; }
}
編集ありがとうございました@halfer – vbnoob