C# 参数字典包含参数';id';
我正在创建一个MVC应用程序。我在视图之间传递一些数据,如下所示:C# 参数字典包含参数';id';,c#,asp.net,.net,asp.net-mvc,C#,Asp.net,.net,Asp.net Mvc,我正在创建一个MVC应用程序。我在视图之间传递一些数据,如下所示: public ActionResult AddGroup(AddGroupViewModel model) { var entities = new ClassDeclarationsDBEntities1(); var model1 = new AddGroupViewModel(); model1.Subjects = entities.
public ActionResult AddGroup(AddGroupViewModel model)
{
var entities = new ClassDeclarationsDBEntities1();
var model1 = new AddGroupViewModel();
model1.Subjects = entities.Subjects.ToList();
model1.Users = entities.Users.ToList();
if (ModelState.IsValid)
{
var subj = entities.Subjects
.Where(b => b.name == model.subject_name)
.FirstOrDefault();
int id = subj.class_id;
return RedirectToAction("AddGroupsQty", "Account", new { qty = model.qty, subject_id = id});
}
return View(model1);
}
以及:
public ActionResult AddGroupsQty(int qty, int id)
{
ClassDeclarationsDBEntities1 entities = new ClassDeclarationsDBEntities1();
var model = new AddGroupsQtyViewModel();
model.subject_id = id;
model.qty = qty;
ClassDeclarationsDBEntities1 entities1=new ClassDeclarationsDBEntities1();
var subj = entities1.Subjects
.Where(b => b.class_id == model.subject_id)
.FirstOrDefault();
model.subject_name = subj.name;
return View(model);
}
但不幸的是,我得到了这个错误:
参数字典包含的参数“id”为空
方法的不可为Null的类型“System.Int32”
中的“System.Web.Mvc.ActionResult AddGroupsQty(Int32,Int32)”
'ClassDeclarationsThsesis.Controllers.AccountController'。可选的
参数必须是引用类型、可为null的类型或声明为
可选参数。纳兹瓦参数:参数我该怎么办
您的操作方法
AddGroupsQty
有两个参数,qty
和id
,但是在执行重定向时,您的查询字符串没有id!相反,它有一个名为subject\u id
要修复此错误,请将路线值项从subject\u id
更改为id
return RedirectToAction("AddGroupsQty", "Account", new { qty = model.qty, id = id});
或者您可以将
AddGroupsQty
action method参数从id
更改为subject\u id
(确保检查所有其他位置并根据需要修复查询字符串/路由值)您的操作方法AddGroupsQty
有两个参数,qty
和id
,但在执行重定向时,您的查询字符串没有id!相反,它有一个名为subject\u id
要修复此错误,请将路线值项从subject\u id
更改为id
return RedirectToAction("AddGroupsQty", "Account", new { qty = model.qty, id = id});
或者您可以将AddGroupsQty
操作方法参数从id
更改为subject\u id
(确保检查所有其他位置,并根据需要修复查询字符串/路由值)