Sto solo imparando a lavorare con il routing in ASP.NET MVC e sto cercando di capire il metodo IgnoreRoute.Ignorare una route in ASP.NET MVC
Sto tentando di impedire agli utenti di accedere a "Content/{filename}.html"
. Ho inserito questa come prima chiamata nel mio metodo RegisterRoutes. Qui è il mio codice:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("Content/{filename}.html");
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute("MyRoute", "{controller}/{action}/{id}/{*catchall}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { controller = "^.*", action = "^Index$|^About$" },
new[] { "UrlsAndRoutes.AditionalControllers" });
routes.MapRoute("MyRoute2", "{controller}/{action}/{id}/{*catchall}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new { controller = "^.*", action = "^Index$|^About$" },
new[] { "UrlsAndRoutes.Controllers" });
routes.MapRoute("ShopSchema2", "Shop/OldAction", new { controller = "Home", action = "Index" });
routes.MapRoute("ShopSchema", "Shop/{action}", new { controller = "Home" });
routes.MapRoute("", "X{controller}/{action}");
routes.MapRoute(
name: "",
url: "{controller}/{action}",
defaults: new { controller = "Home", action = "Index" }
);
}
Se provo ad accedere ad un link come localhost: 53907/Content/Static.html, non dovrebbe permettere a me di visualizzare il file da quanto ho capito finora, ma lo fa di visualizzazione esso.
Cosa sto sbagliando?
e qual è il problema? –
hai provato? routes.IgnoreRoute ("Contenuto/{*} pathinfo .html"); – Jon
se provo ad accedere a un collegamento come questo: http: // localhost: 53907/Content/Static.html non dovrebbe permettermi di visualizzare il file da quello che ho capito finora, ma lo visualizza – aleczandru