2011-05-31 90 views
9

我有一個定義了標準路由的ASP.Net MVC應用程序。該應用程序爲我們的數據庫編輯元數據。該URL方案是:ASP.Net MVC3路由保留字?

http://localhost/tables/Edit/[Name of Table Here] 

這將調用tables控制器上的edit功能,通過在表中的參數id的名稱。除了一個名爲con的表格外,所有表格都可以正常工作。下面的網址出現了404:

http://localhost/tables/Edit/con 

我能想到的唯一的事情就是con必須是某種保留字相對於MVC路由。有誰知道這是否是這種情況,是否還有其他保留字要避免?

回答

4

CON是一個保留字像COM1,COM2, COM3,COM4,LPT1,LPT2,AUX,PRN,NUL。

我也遇到這個問題,同時使用ajax請求。我通過在參數的開頭加上「 - 」char來解決問題,然後我用代碼隱藏替換它。

但它是一個愚蠢的解決方案,可以通過簡單地增加

<system.web> 
     <httpRuntime relaxedUrlToFileSystemMapping="true"/> 
     ...... 
    </system.web> 

到Web.config文件中輕鬆解決這個問題,你可以放心地在網址中使用了這些話。