我目前使用的ASP.NET MVC 4路由與LowercaseUrls
選項設置爲true
,它的工作效果很好。我使用這個配置:不影響參數的小寫URL
routes.LowercaseUrls = true;
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new {
controller = "Inicio",
action = "Index",
id = UrlParameter.Optional
});
但在特定的一組動作,我有一個加密,並區分大小寫字符串id
參數。
然後,當我嘗試生成一個這樣的動作鏈接:
@Html.ActionLink("My Text", "Action", "Controller", new { id = encryptedString })
URL中的id
參數被轉換爲小寫字母導致一個錯誤,而試圖解密該字符串。
是否可以將路由配置爲忽略URL參數的小寫URL?
我不確定,但如果您使用查詢字符串而不是路由參數,它應該保持獨立? – ryudice
它確實,但我真的更喜歡它不是一個查詢字符串值。 – Meryovi
您可以使用IgnoreRoute免責聲明構建您自己的路線我不知道這是否可以工作只是一個想法 –