我需要创建一个包含以下网址的路线:“{controller} / {action} / {ticket-id}”
routes.MapRoute(
name: "Login",
url: "Auth/Login/{ticket-id}",
defaults: new { controller = "Auth", action = "Login"}
);
由于参数名称为“ticket-id”,我无法创建路线。
“ticketid”没问题......但我无法更改参数名称。
你有任何解决方案。
由于
答案 0 :(得分:2)
MVC MapRoute将模板中的参数名称映射到操作中的参数名称。
您说您无法更改参数名称。问题是在c#中你甚至不允许使用该参数名称。
c#不允许您为参数/变量名称设置连字符-
。
这是不允许的,因为名称必须是有效的标识符。
public ActionResult Login(string ticket-id ) {...}