【问题标题】:ActionResult parameter null controlActionResult 参数空控件
【发布时间】:2012-05-15 14:17:31
【问题描述】:

如何控制 ActionResult 空参数?我正在尝试为 id 设置空值但不起作用。

控制器:

public ActionResult Languages(int id)
{
    if(id==null)
    {
      id = 0;
    }
    var query = from n in se.Languages
                orderby n.Language ascending
                select n;
    return View(query.Skip(id * 10).Take(10));
}

GLOBAL.ASAX:

    routes.MapRoute(
        null,
        "{controller}/{action}", // URL with parameters
        new { controller = "Home", action = "Languages" } // Parameter defaults
    );

    routes.MapRoute(
        null,
        "{controller}/{action}/page/{id}", // URL with parameters
        new { controller = "Home", action = "Languages", id = UrlParameter.Optional } // Parameter defaults
    );

【问题讨论】:

    标签: asp.net-mvc-3 razor null actionresult url-parameters


    【解决方案1】:

    int 不能为空尝试

    public ActionResult Languages(int? id)
    
    if(!id.HasValue)
        //...
    

    或者有

    public ActionResult Languages(int id = 0)
    

    或者您可以在路由中提供默认值

    routes.MapRoute(
        null,
        "{controller}/{action}/page/{id}", // URL with parameters
        new { controller = "Home", action = "Languages", id = 0 } // Parameter defaults
    );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多