繁体   English   中英

MVC3中来自UI的控制器中的null值

[英]null value in controller from UI in MVC3

我有一个href标记,它将值传递给控制器​​。 当控制权转到控制器方法时,值是null,但在UI上,当我将鼠标悬停在href列上时,我可以将所有值视为querystring ...

例如:abc.com/notify/2 abc.com/notify/3 abc.com/notify/4

我知道由于控制器中哪个值为空而丢失了什么

HTML:

<td style="width:70%">
  <a href="/abc/Notify/<%=ist.SeqID %>">Notify! </a>
</td>

控制器代码段

public ActionResult Notify(int? sID)
{

}  

假设您只有默认路由:

routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
);

用的方法:

public ActionResult Notify(int? sID)
{

} 

以下网址:

/ abc / Notify / 1

遵循路由方法,并分配id = 1。 但是,该方法没有名为id的参数,它的sID不匹配,因此始终变为null。

您可以:

url: "{controller}/{action}/{sid}",

要么

public ActionResult Notify(int? ID)

这是否意味着-如果我定义了多个路由,则所有参数的名称应与默认路由一匹配?

我不确定这是什么意思。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM