C#/ASP.NET の初心者...
Administrators と AdministratorsRights の 2 つのテーブルがあります。Administrators テーブルでは、各管理者に AdministratorsRightsID があります。これは私の管理者クラス (モデル) です。
public partial class administrator
{
[Key]
public int AdministratorID { get; set; }
[Required]
public int AdministratorsRightsID { get; set; }
[Required]
public string UserName { get; set; }
[Required]
public string LastName { get; set; }
[Required]
public string FirstName { get; set; }
[Required]
public string StandardID { get; set; }
public virtual administratorsright RightsLevel { get; set; }
}
これは私のコントローラーです:
public ActionResult Index()
{
return View(db.administrators.ToList());
}
これは私の見解です(かみそり):
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.RightsLevel)
</td>
<td>
@Html.DisplayFor(modelItem => item.UserName)
</td>
<td>
@Html.DisplayFor(modelItem => item.LastName)
</td>
<td>
@Html.DisplayFor(modelItem => item.FirstName)
</td>
<td>
@Html.DisplayFor(modelItem => item.StandardID)
</td>
<td>
@Html.ActionLink("Edit", "edit", new { id=item.AdministratorID }) |
@Html.ActionLink("Details", "details", new { id=item.AdministratorID }) |
@Html.ActionLink("Delete", "delete", new { id=item.AdministratorID })
</td>
</tr>
}
ビューのitem.RightsLevelを除くすべてが表示されます。ID(「1」ではなくシステム管理者)ではなく名前を表示するようにしようとしています。どの列を参照するかを指定していないため、これが機能しないことに驚きはありませんが、問題は、どこでそれを行うべきかわからないことです。このすべてのロジックがそこで発生するはずなので、私のモデルは正しくないと推測しています。