2016-03-15 81 views
1

我需要創建一個像一個URL路徑: 「{控制器}/{行動}/{票-ID}」MVC圖路線與參數票ID

routes.MapRoute(
    name: "Login", 
    url: "Auth/Login/{ticket-id}", 
    defaults: new { controller = "Auth", action = "Login"} 
); 

我不能創建路由由於參數名稱「ticket-id」。

「ticketid」沒有問題......但我無法更改參數名稱。

你有什麼解決方案。

感謝

+1

爲什麼你需要這樣做呢?執行以下操作將是非法的:'public ActionResult Login(string ticket-id){...}' – Ric

+1

使用'ticketId'。你只能使用參數中允許的字符。 – Ben

回答

2

MVC圖路線在模板中的動作參數名稱參數名稱映射。

你說你不能改變參數名稱。問題是,在C#中,您甚至不會被允許使用該參數名稱。

對於參數/變量名稱,c#不允許使用連字符-

這將不被允許,因爲名稱必須是有效的標識符。

public ActionResult Login(string ticket-id) {...}