在尝试解决这个问题很长时间后,考虑到路由冲突等问题 - 我从头开始了一个单独的项目。
当您尝试访问根站点 (http://site/properties
) 时,名为“properties”的 MVC Controller 看起来总是返回 403.14 禁止消息 - 然而,其他页面有效( http://site/properties/index
).
它在一个区域中作为 Controller 工作得很好,但是,我无法在主站点中创建它。
我想知道是否有人知道为什么以及最好的解决方法是什么?
最佳答案
除了 DavidG 的 answer .
当您发布项目时,编译后的版本没有 Properties 文件夹。要在本地开发时解决此问题,您可以将 RouteExistingFiles
设置为 true
,以便 ASP.NET 路由处理所有请求。
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.RouteExistingFiles = true;
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
关于c# - MVC Controller 有什么特别之处称为属性吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34263788/