zoukankan      html  css  js  c++  java
  • MVC配置global无效

    做项目的时候遇到一个问题,就是在global里进行配置了路由,配置代码如下:

    但是在我用http://xxxx/zt.asp这个路径进行访问的时候,调试并没有跳转到该控制器下的方法内,而是直接出现404错误。

    个人觉得其原因是因为配置带有后缀名的路由,默认访问的是其静态文件,故在该文件下访问zt.asp并没有找到这样一个文件,所以出现404问题。

    解决办法如下:

    第一种:即在web.config文件里配置如下

    <system.webServer>
        <modules runAllManagedModulesForAllRequests="true"/>
      </system.webServer>


    第二种:

     <system.webServer>
          <modules runAllManagedModulesForAllRequests="false" />
          <handlers>
            <add name="HtmlFileHandler" path="*.asp" verb="GET" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0"/>
          </handlers>
        </system.webServer>

    两种方法对比,根据查阅资料,第二种性能更好点,两者的差别在于第一种相当于访问该站点的所有请求都会进入modules处理,包括一些静态文件的请求,当一些很大pv站点这样做的话就会造成一定的压力从而影响性能。

    测试两者的请求文件方法为

    protected void Application_BeginRequest(object sender, EventArgs e)
            {
                using (StreamWriter _testData = new StreamWriter(Server.MapPath("~/data.txt"), true))
                {
                    _testData.WriteLine(Request.Url.ToString());
                }
            }
  • 相关阅读:
    Android开发实例关键点讲解系列之一:Eclipse中建立Android工程
    类欧几里得小记
    【清华集训2017模拟12.09】塔
    【51nod1792】Jabby's segment tree
    【51nod1220】约数之和
    【51nod 2026】Gcd and Lcm
    【JZOJ5180】【NOI2017模拟6.29】呵呵
    2017noip总结
    2017.11.7总结
    Codeforces Round #395 Div.1 C pacifist【JZOJ5449】Pacifist
  • 原文地址:https://www.cnblogs.com/97310ZT/p/8676589.html
Copyright © 2011-2022 走看看