2012-10-17 116 views
1

我是ASP.NET的新手,我在WebMatrix中使用razor語法首先學習。帶WebMatrix和剃鬚刀的友好URL

在PHP我用的.htaccess路由的URL數據庫的帖子,例如:

http://mywebsite.com/linux/how-to-install-wamp-in-ubuntu-12.04 

在這種情況下,路由文件:

http://mywebsite.com/routes.php?title=how-to-install-wamp-in-ubuntu-12.04 

我試圖航線,如PHP例如:

http://mywebsite.com/routes.cshtml?title=how-to-install-wamp-in-ubuntu-12.04 

我能做到這一點在ASP.NET與WebMatrix中和剃鬚刀?

我知道如何在ASP.NET中獲取GET數據,但我不明白如何創建友好的URL,以及如何在找不到頁面時路由到「routes.cshtml」。

回答

3

詳情:微軟現在這使得通過Nuge的ASP.NET非常容易t包。不幸的是,這個軟件包「Microsoft.AspNet.FriendlyUrls」目前處於預發行版,而WebMatrix不允許您下載預發行版。因此,跟我的做法相比,如果你只是有Visual Studio或VS Express,這可能不那麼容易。

我的建議是下載Visual Studio Express 2012並使用它開發或使用它,這樣你就可以獲得Nuget包。

我假定你想在WebMatrix中開發。

解決方案:

  1. 下載並安裝Visual Studio Express的2012
  2. 創建一個新的網站
  3. 在解決方案資源管理器中,右鍵點擊你的網站,並選擇 「管理的NuGet包。」
  4. 按下表示「僅穩定」的下拉列表並選擇「包括預售」
  5. 在搜索框中輸入「Microsoft.AspNet.FriendlyUrls 「
  6. 選擇」安裝「
  7. 在Windows資源管理器中打開項目,以便看到所有文件。
  8. 將文件夾「App_Code」和「bin」複製到您的WebMatrix項目中(例如將它們添加到您的解決方案中)。
  9. 添加全局應用程序類「Global。ASAX」
  10. 在Application_Start方法中添加以下行

    RouteConfig.RegisterRoutes(System.Web.Routing.RouteTable.Routes);

  11. 現在,您將有FriendlyURL的

我知道,這似乎是一個大量的工作,但如果你有Visual Studio或WebMatrix中允許的預發行那麼這將是很容易做到。

警告:如果你決定去發展它在Visual Studio中刪除以下文件作爲它的移動部分目前不工作(因此,爲什麼它是預發行)

  • Site.Mobile.Master
  • LiSite.Mobile.Master.designer.cs
  • ViewSwitcher.ascx
  • ViewSwitcher.ascx.designer.cs

未來:在不久的將來會有FriendlyUrl的的發行版本,然後你就可以從的NuGet得到它在WebMatrix中更容易。

更多信息的鏈接:

Information on Microsoft's Friendly Url Package
Information on how to use Nuget in WebMatrix

+0

正是我所需要的,但我有一個關於asp.net的問題...我在一個託管包不會產生依賴性問題由於發佈應用程序後?對於信息 – Carasuman

+0

我不相信這個包是用於網頁框架。它安裝Web窗體用戶控件和母版頁。 –