Bunun bir MVC web sitesinde olup olmadığına dair bir ilgim olup olmadığını bilmiyorum ama yine de bundan bahsederdim. Benim ImageHandler sınıfını içeren bir klasör adında Eylemciler sahip Sitesi projesindeÖzel HttpHandler ateşlemiyor, ASP.NET MVC Uygulamasında 404 döndürüyor
<add verb="*" path="*.imu" type="Website.Handlers.ImageHandler, Website, Version=1.0.0.0, Culture=neutral" />
: Benim web.config içinde
Ben bu satırları var. O (ı ProcessRequest kodu kaldırdık)
using System;
using System.Globalization;
using System.IO;
using System.Web;
namespace Website.Handlers
{
public class ImageHandler : IHttpHandler
{
public virtual void ProcessRequest(HttpContext context)
{
//the code here never gets fired
}
public virtual bool IsReusable
{
get { return true; }
}
}
}
Web sitemi çalıştırın ve yalnızca 404 hatası döndürür /something.imu giderseniz buna benzer.
Visual Studio 2008 kullanıyorum ve bunu ASP.Net geliştirme sunucusunda çalıştırmaya çalışıyorum.
Birkaç saat aradım ve ayrı bir web sitesinde çalışıyordum. Bu yüzden neden mevcut bir web sitesinde çalışmadığını anlamıyorum. * .imu yol btw'ye başka referans yok.
Dur, bana doğru yönde koymak! Bu satırı RegisterRoutes yöntemine ekledim, bu da MVC'nin isteği ele almasını durduracak: routes.IgnoreRoute ("{resource} .imu/{* pathInfo}"); – Peter
Tüm yollardaki uzantıyı yok saymak istiyorsanız, rotalar.IgnoreRoute ("{* allimu}", new {allimu = @ ". * \. Imu (/.*)?"}); phill haack'den http://haacked.com/archive/2008/07/14/make-routing-ignore-requests-for-a-file-extension.aspx/ – jsturtevant