这篇文章主要讲解了“Linux ASP.NET MVC网站中httpHandlers配置无效怎么办”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux ASP.NET MVC网站中httpHandlers配置无效怎么办”吧!
成都创新互联专注于佳县网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供佳县营销型网站建设,佳县网站制作、佳县网页设计、佳县网站官网定制、小程序设计服务,打造佳县网络公司原创品牌,更为您提供佳县网站排名全网营销落地服务。
造成httpHandlers无效的原因我并没有时间去深究,为了能够及时解决这个问题,我把注意力放到了Global.asax文件的Application_BeginRequest方法上,然后给出如下的解决方案。
一,在global.asax中添加一个静态方法:
static bool TryHanler
{
if (string.IsNullOrEmpty(ext)) return false;
var context = HttpContext.Current;
var path = context.Request.AppRelativeCurrentExecutionFilePath;
if (!path.EndsWith(ext)) return false;
var handle = Activator.CreateInstance(typeof(T)) as IHttpHandler;
if (handle == null) return false;
handle.ProcessRequest(context);
context.Response.End();
return true;
}
说明:这是一个泛型方法,T代表你用于处理某个路径的继承自IHttpHandler的自定义类,参数ext是这个处理类所处理的请求路径的扩展名(含“.”号)。
二,在global.asax中实现Application_BeginRequest方法,并在该方法中调用TryHandler。如:
protected void Application_BeginRequest(object sender, EventArgs e)
{
if(TryHandler
}
注:该处理方案具有通用性,能同时兼容 Windows IIS和 Linux Jexus或XSP。
感谢各位的阅读,以上就是“Linux ASP.NET MVC网站中httpHandlers配置无效怎么办”的内容了,经过本文的学习后,相信大家对Linux ASP.NET MVC网站中httpHandlers配置无效怎么办这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!