
XML
ASP.NET MVC 3: RouteExistingFiles = true 似乎没有效果
在ASP.NET MVC 3中,我们可以使用RouteExistingFiles属性来控制路由系统是否要处理静态文件请求。当设置为true时,路由系统会尝试匹配路由来处理静态文件请求。然而,有时候我们会发现设置RouteExistingFiles为true似乎没有产生预期的效果。本文将探讨这个问题,并提供解决方案。问题分析当我们设置RouteExistingFiles为true时,我们期望路由系统能够处理静态文件请求。然而,有时候我们会发现即使设置了这个属性,静态文件请求仍然被IIS处理,而不是通过路由系统。解决方案要解决这个问题,我们需要对web.config文件进行一些更改。在XML<system.webServer> <handlers> <add name="BlockViewHandler" path="*.cshtml" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" /> </handlers></system.webServer>通过这个更改,我们告诉IIS在处理.cshtml文件时使用System.Web.HttpNotFoundHandler来处理请求。这样一来,静态文件请求就会被路由系统处理,而不是被IIS处理。案例代码:
csharppublic class HomeController : Controller{ public ActionResult Index() { return View(); } public ActionResult About() { return View(); }}标题一:问题分析在设置RouteExistingFiles为true时,我们期望路由系统能够处理静态文件请求。然而,有时候我们会发现即使设置了这个属性,静态文件请求仍然被IIS处理,而不是通过路由系统。标题二:解决方案要解决这个问题,我们需要对web.config文件进行一些更改。在Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号