【问题标题】:File upload controller not working after upload - global.asax not firing after upload上传后文件上传控制器不工作 - 上传后 global.asax 不触发
【发布时间】:2016-10-22 04:59:05
【问题描述】:

我的文件上传控制器有问题。在我的本地计算机上,它可以完美运行。上传没有问题。但是当我发布网站并上传到网络时,它没有上传并且找不到错误。

这是我的本地计算机结果

这是网页版

我的 Globax.Asax 文件就是这样

GlobalConfiguration.Configure(config =>
            {
                config.MapHttpAttributeRoutes();
                config.Routes.MapHttpRoute(
                    name: "DefaultApi",
                    routeTemplate: "api/{controller}/{action}/{id}",
                    defaults: new { id = System.Web.Http.RouteParameter.Optional }
                    );

                
            });

我尝试了一切,但没有成功。我该怎么做才能解决这个问题。

【问题讨论】:

  • 首先,检查文件的路径是否在服务器上,然后尝试在窗口或文本文件中显示您尝试访问的路径,如果您的文件大于 4 mb 然后看看user3698428的回答

标签: c# asp.net upload global-asax


【解决方案1】:

我知道这真的很老了,但是看看你的项目中是否有 Precompiledapp.config 文件。

我发现删除这个文件解决了这个问题,因为 global.asax 中的路由没有在项目中使用该文件完成。

【讨论】:

    【解决方案2】:

    如果您上传超过 4MB 大小的文件,则 IIS 将拒绝该请求。您可以通过更改 web.config 文件来增加它

    <system.web>
      <!-- To allow upto 1 GB -> 1*1024*1024 = 1048576 -->
      <httpRuntime maxRequestLength="1048576"  />
    </system.web>
    
    <system.webServer>
      <security>
        <requestFiltering>
          <!-- To allow upto 1 GB -> 1*1024*1024*1024 = 1073741824 -->
          <requestLimits maxAllowedContentLength="1073741824" />
        </requestFiltering>
      </security>
    </system.webServer>
    

    http://www.dotnetlearners.com/blogs/view/83/Aspnet-maximum-file-upload-size-limit.aspx

    【讨论】:

      【解决方案3】:

      尝试将您的 routeTemplate 更改为:

      "../api/{controller}/{action}/{id}"

      【讨论】:

        猜你喜欢
        • 2014-07-12
        • 1970-01-01
        • 2017-03-15
        • 2011-07-25
        • 1970-01-01
        • 1970-01-01
        • 2013-06-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多