Asp.net
ASP.NET MVC Url Route 支持(點)
我希望你能幫助我解決以下問題。
我在 IIS7 上使用 ASP.NET MVC 3,並希望我的應用程序支持帶點的使用者名。
範例:<http://localhost/john.lee>
這就是我的 Global.asax 的樣子:( <http://localhost/> {username})
routes.MapRoute( "UserList", "{username}", new { controller = "Home", action = "ListAll" } );當我訪問<http://localhost/john.lee/details>等其他頁面時,這些應用程序可以工作。
但是主使用者頁面不起作用,我希望該應用程序能夠像支持<http://www.facebook.com/john.lee>的 Facebook 一樣工作。
我使用了下面的程式碼,它根本不適合我:
<httpRuntime relaxedUrlToFileSystemMapping="true" />我能夠使用下面的程式碼並讓應用程序接受點,但由於許多不同的原因我絕對不想使用下面的程式碼,請告訴我有一種方法可以解決這個問題。
<modules runAllManagedModulesForAllRequests="false" />
我面臨著同樣的問題。所以對我來說最好的解決方案是:
<system.webServer> <modules runAllManagedModulesForAllRequests="true"></modules> <system.webServer>
將 UrlRoutingHandler 添加到 web.config。但是,這需要您的網址更加具體(fe /Users/john.lee)。這會強制以 /Users 開頭的每個 url 都被視為 MVC url:
<system.webServer> <handlers> <add name="UrlRoutingHandler" type="System.Web.Routing.UrlRoutingHandler, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" path="/Users/*" verb="GET"/> </handlers> </system.webServer>