我为删除创建了脚手架删除视图,但它不起作用。调试时我发现它没有将正确的记录 ID 传递给控制器。始终将 0 作为 ID 传递,结果是异常(ystem.NullReferenceException 未由用户代码处理 Message=Object reference not set to an instance of an object.)。
但在视图提交按钮中显示正确的 URL 和正确的 ID。
控制器:
public ActionResult DeleteSubject(int id)
{
try
{
// returns the View
}
catch (Exception e)
{
// Handle and log the exception
}
}
[HttpPost]
public ActionResult DeleteSubject(SubjectModel subject)
{
try
{
// Call methods for delete
}
catch (Exception e)
{
// Handle and log the exception
}
}
看法:
@model LMS.Models.SubjectModel
// ... form elements go here
@using (Html.BeginForm()) {
<input type="submit" value="Delete" />
}
使用断点调试 [HttpPost] 方法时,该方法作为参数的对象似乎未使用值初始化。ID 字段显示 0,其他字段显示 null。
致力于重新创建视图、重写控制器方法、更改属性等。但仍然遇到问题。感谢您的意见。
(顺便说一句,为 Create、List 和 Edit 创建了脚手架视图。它们运行良好。)
谢谢,
查图尔