私の見解
<table>
<tr>
<td>
Middle Name :
</td>
<td>
@Html.EditorFor(model => @Model.EmployeeDetail.MiddleName)
</td>
<td>
@Html.ValidationMessageFor(model => @Model.EmployeeDetail.MiddleName)
</td>
</tr>
<tr>
<td>
Last Name :
</td>
<td>
@Html.EditorFor(model => @Model.EmployeeDetail.LastName)
</td>
<td>
@Html.ValidationMessageFor(model => @Model.EmployeeDetail.LastName)
</td>
</tr>
<tr>
<td>
Date of Birth :
</td>
<td>
@Html.EditorFor(model => @Model.EmployeeDetail.DateOfBirth)
</td>
<td>
@Html.ValidationMessageFor(model => @Model.EmployeeDetail.DateOfBirth)
</td>
</tr>
</table>
私のコントローラーアクション
public ActionResult Index()
{
var id = 0;
if (Session["id"] != null)
{
id = Convert.ToInt32((Session["id"].ToString()));
}
var empDetails = _empRepository.GetEmployeeDetails(id);
var emp = new UserViewModel { EmployeeDetail = empDetails };
return View(emp);
}
私のビューモデル
public class UserViewModel
{
public EmployeeDetail EmployeeDetail { get; set; }
}
私のモデル
public partial class EmployeeDetail
{
public int Id { get; set; }
public int UserId { get; set; }
public System.DateTime DateOfBirth { get; set; }
public string IsAdmin { get; set; }
}
私の見解では、@Html.ValidationMessageFor(model => @Model.EmployeeDetail.DateOfBirth) でオブジェクト参照を取得しています。
特定のIDのデータベースにデータがないため、コントローラーアクションからビューに渡すビューモデル「emp」がnullであるため、このエラーが発生します。
このオブジェクト参照エラーを回避するにはどうすればよいですか?