2011-09-29 9 views
5

Mam aplikację MVC2. Mam również zestaw gotowych procedur obsługi HTTP, które pochodzą z System.Web.IHttpHandler. Jak używać ich razem?Jak korzystać z moich procedur obsługi protokołu HTTP dla wybranych ścieżek i programu obsługi MVC dla pozostałych?

Próbowałem następujących w pliku web.config:

<system.webServer> 
    <!--other stuff--> 
     <handlers> 
      <add name="MyCustomHandler" verb="GET" path="MySpecificPath*" type="CustomHandling.CustomHttpHandlerBase, CustomHAndlingAssembly"/> 
      <add name="MvcHttpHandler" preCondition="integratedMode" verb="*" path="*.mvc" type="System.Web.Mvc.MvcHttpHandler, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"/> 
     </handlers> 
</system.webServer> 

jeszcze kontrola nigdy nie osiągnie mój obsługi i MVC obsługi jest stosowany do wszystkich wniosków.

Jak używać tresera dla jednej konkretnej ścieżki i procedury obsługi MVC dla wszystkich innych ścieżek?

Odpowiedz

2

Uważam, że należy zignorować te specyficzne ścieżki z kolekcji tras w uruchomieniu aplikacji. Na przykład,

routes.IgnoreRoute("MySpecificPath/{*pathInfo}"); 

Inaczej UrlRoutingModule będzie pasował z trasy, a następnie http handler będzie zlokalizowany poprzez IRouteHandler na tej trasie.

Aby uzyskać więcej informacji o mieszaniu formularzy sieci Web ASP.NET z ASP.NET MVC, zobacz artykuł this article.

Powiązane problemy