每个插入 .cshtml 页面都会出现相同的错误
Every insert .cshtml page get the same error
我的项目中有 4 个模型 classes。每个模型 class 都有一个插入页。在每个插入数据页上,我都会收到与 System.NullReferenceException
相同的错误。此错误显示在每个 @Html.EditorFor
属性中。
假设,我的插入数据页面(.cshtml 页面)中有 3 个输入属性,然后每个属性都显示与 System.NullReferenceException
相同的错误。我不明白为什么会这样?请看附图。我无法对此进行调试,因为错误显示在 .cshtml 页面中。请帮我解决这个错误。
当我在我的方法中实例化模型 class 并将其传递到视图页面时,它起作用了。但是现在我很想知道如果是这样那么为什么 Entity Framework 构建的方法不实例化模型 classes 并传递给查看页面。
public ActionResult Create()
{
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "UserId,UserName,Password,Department,LocalLvl,Status")] UserModel userModel)
{
if (ModelState.IsValid)
{
db.UserModels.Add(userModel);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(userModel);
}
上述方法是由Entity Framework脚手架过程创建的,为什么不实例化模型class。之前,我的项目 运行 成功然后突然开始显示错误?请帮忙。
预计您已在页面顶部定义了 @model
,该页面预计会接收该类型的对象。
@model YourProject.Models.LoginModel
并确保您已返回模型实例以传递给您的视图。否则,@model
将是 null
。
public ActionResult Login()
{
// Implementation
var model = new LoginModel();
return View(model);
}
[HttpPost]
public ActionResult Login(LoginModel model)
{
// Implementation
return View(model);
}
参考资料
我的项目中有 4 个模型 classes。每个模型 class 都有一个插入页。在每个插入数据页上,我都会收到与 System.NullReferenceException
相同的错误。此错误显示在每个 @Html.EditorFor
属性中。
假设,我的插入数据页面(.cshtml 页面)中有 3 个输入属性,然后每个属性都显示与 System.NullReferenceException
相同的错误。我不明白为什么会这样?请看附图。我无法对此进行调试,因为错误显示在 .cshtml 页面中。请帮我解决这个错误。
当我在我的方法中实例化模型 class 并将其传递到视图页面时,它起作用了。但是现在我很想知道如果是这样那么为什么 Entity Framework 构建的方法不实例化模型 classes 并传递给查看页面。
public ActionResult Create()
{
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "UserId,UserName,Password,Department,LocalLvl,Status")] UserModel userModel)
{
if (ModelState.IsValid)
{
db.UserModels.Add(userModel);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(userModel);
}
上述方法是由Entity Framework脚手架过程创建的,为什么不实例化模型class。之前,我的项目 运行 成功然后突然开始显示错误?请帮忙。
预计您已在页面顶部定义了 @model
,该页面预计会接收该类型的对象。
@model YourProject.Models.LoginModel
并确保您已返回模型实例以传递给您的视图。否则,@model
将是 null
。
public ActionResult Login()
{
// Implementation
var model = new LoginModel();
return View(model);
}
[HttpPost]
public ActionResult Login(LoginModel model)
{
// Implementation
return View(model);
}