运行包含jquery网格插件的MVC应用程序时出现以下错误。
The parameters dictionary contains a null entry for parameter 'page' of non-nullable type 'System.Int32' for method 'System.Web.Mvc.ActionResult GetCategory(System.String, System.String, Int32, Int32)' in 'ecom.Controllers.AdminController'. To make a parameter optional its type should be either a reference type or a Nullable type.
Parameter name: parameters
public ActionResult GetCategory(string sidx, string sord, int page, int rows)
{
var jsonData = _Category.GetAll().ToJsonForjqGrid("category_id", new[] { "category_id", "category_name" });
return Json(jsonData);
}
在getCategory
视图中我以这种方式使用它:
<script language="javascript" type="text/javascript">
loadProducts();
</script>
答案 0 :(得分:0)
您有一个带有int参数的动作GetCategory,但是在调用此动作时不指定参数的值。
如异常所示,如果参数是可选的,则应该使int参数为nullable,并测试参数是否在操作中具有值。
public ActionResult GetCategory(string p1, string p2, int? p3, int? p4)
{
if (!p3.HasValue)
throw new ArgumentNullException("p3");
//etc...
}
如果参数不是可选的,则调用代码中有错误。