我在我的 ASP MVC 4 应用程序中放置了一个名为“Protected”的子目录,并在该目录中放置了一个简单的 test.html 文件,但我终生无法弄清楚如何让我的自定义全局 AuthorizeAttribute 类在何时触发我在浏览器中查看 test.html 文件。
我在集成模式下使用 IIS Express,所以我认为这会起作用。我什至在集成模式下尝试了 IIS 7,但它仍然对我不起作用。
但也许我做的事情都错了。也许是我的一些误解。
基本上,我需要以编程方式授权对该文件夹中静态文件的请求。还有另一种方法吗?
AD 于 2013 年 4 月 9 日上午 10:07:25 更新:Zidad 在下面的回答让事情朝着正确的方向发展,但我现在无法配置路线。这就是我所拥有的,但该文件仍被直接提供,而不是点击 Home/File 操作。
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute("NotFound", "protected/test.html", new { controller = "Home", action = "File" });
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional });
由 AD 于 2013 年 4 月 9 日上午 10:20:54 更新:Ohhhhhhhhhhhhhhhhhhh,现在我明白了!绝对是我的误解。我想我还有一些东西要学。:)