2013-07-01 44 views
5

我只是想澄清我對ASP .NET MVC(當前版本是4)的理解。說一個ASP .NET MVC應用程序是一個HTTPModule是否正確?

我正在讀這篇文章How does ASP.NET MVC work?

那麼,如何ASP.NET知道如何將請求路由到MVC?答案在於web.config。有添加到模塊集合在ASP.NET MVC新的HTTP模塊項目

所以基本上MVC應用程序中被實現爲一個HttpModule或至少一個MVC應用程序的URL路由部分?

是否有可能創建並註冊自定義路由模塊,然後可能創建自己的微型mvc框架,如Ruby中的Sinatra或PHP中的Slim?

+0

看看John Papa的熱毛巾模板:他做了一個類似於客戶端js模塊的東西,叫做DurandalJS (除非我完全誤解了你的問題......) –

+0

感謝Cory,SPA很酷。 :) – stormwild

回答

4

Url路由實際上是它自己的ASP.NET模塊。它用於MVC和WebForms(也可用於其他ASP.NET應用程序類型)。路線包含在System.Web裝配中。有關路由功能的更多信息,請參閱MSDN

MVC使用IHttpHandler實施。實現可以在here找到。

現在的實際問題:

是否有可能爲一個創建和註冊自定義的路由模塊,然後可能在PHP創建一個像辛納特拉自己的微MVC框架的Ruby或苗條?

是的。這完全有可能。你需要創建自己的類來實現IRouteHandler。然後只需使用該處理程序註冊路線。

+0

太棒了,謝謝。 :) – stormwild

相關問題