我的asp.net mvc4应用程序出了问题:
我正在将两个整数作为参数传递给一个动作:
<a>@Html.ActionLink(s, "Gerer_Sequence", "Travail", new { seq = Model[k][i].Id_séquence , affa = aff.Id_affaire } )</a>
行动是:
public ActionResult Gerer_Sequence(int seq, int affa)
{
Session["affaire"] = affa;
Session["sequence"] = seq;
return RedirectToAction("Index", "Calendar");
}
问题是参数为null
,但其值在模型中为3
和1
。
那么问题是什么?如何修改我的代码以修复错误?
答案 0 :(得分:1)
试试这个。
<td>
@Html.ActionLink("EditUser", "Index", new { Id = m.ID,Name = m.Name })
</td>
public ActionResult Index(string Id, string Name)
{
var model = new RegisterModel();
int _ID = 0;
int.TryParse(Id, out _ID);
if (_ID > 0)
{
RegisterModel register = GetRegisterUserById(_ID);
model.ID = _ID;
model.Name = register.Name;
model.Address = register.Address;
model.PhoneNo = register.PhoneNo;
}
return View(model);
}
答案 1 :(得分:1)
你只需要改变这个:
new { seq = Model[k][i].Id_séquence , affa = aff.Id_affaire }
到此:
new RouteValueDictionary { { "seq", Model[k][i].Id_séquence }, { "affa", aff.Id_affaire } }
因为您使用的第四个参数是路线值。
答案 2 :(得分:1)
试试这个:
@Html.ActionLink(s, "Gerer_Sequence", "Travail", new { seq = Model[k][i].Id_séquence , affa = aff.Id_affaire }, null )
答案 3 :(得分:1)
答案 4 :(得分:0)
我把动作放在同一个控制器中:
@Html.ActionLink("Gerer Sequence", "Gerer_Sequence", new { seq = Model[k][i].Id_séquence , affa = aff.Id_affaire } )