简体   繁体   English

ASP.net MVC路由

[英]ASP.net MVC routing

I just created below action in my controller: 我刚刚在控制器中创建了以下动作:

public ActionResult Serial(string letterCase)
{
    string serial = "SAM_ATM_1.0.0";
    if (letterCase == "lower")
    {
        return Content(serial.ToLower());
    }
    return Content(serial);
}

and added below routing rules above default action: 并在默认操作上方添加了以下路由规则:

routes.MapRoute(
    name: "Serial",
    url: "serial/{letterCase}",
    defaults: new { controller = "Home", action = "Serial", letterCase = "upper" }
);

However calling url http://localhost:5532/home/serial/lower in debug session, letterCase is passed with null value. 但是,在调试会话中调用url http:// localhost:5532 / home / serial / lower时, letterCase传递的值为空。

Because you call localhost:5532/ home /serial/lower, try to call localhost:5532/serial/lower 因为您呼叫localhost:5532 / home / serial / lower,所以请尝试呼叫localhost:5532 / serial / lower

or, if you need localhost:5532/home/serial/lower, rewrite your route rule to 或者,如果您需要localhost:5532 / home / serial / lower,则将您的路由规则重写为

routes.MapRoute(
    name: "Serial",
    url: "home/serial/{letterCase}",
    defaults: new { controller = "Home", action = "Serial", letterCase = "upper" }
);

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

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