asp vnext,忽略路由

时间:2015-01-03 16:36:31

标签: asp.net asp.net-mvc routes asp.net-core

我正在使用vnext并使用路由,但它可以路由一切。

这很好(来自Startup.cs):

application.UseMvc(routes =>
            {
                // setup routes
                // default mapping
                routes.MapRoute(
                    name: "default",
                    template: "{controller}/{action}/{id?}",
                    defaults: new { controller = "Home", action = "Index" });
                });

但是当我使用(在视图中)时

<link href='@Url.Content("~/CDN/r.css")' rel="stylesheet" />

<img src="/CDN/i.png" />

它给出了404错误。

那么如何像以前的版本一样设置忽略路由?

日Thnx

1 个答案:

答案 0 :(得分:1)

您应该在MVC之前注册StaticFiles中间件,以用于您希望提供.css.png等静态文件的情况。因此,静态文件的请求将由此提供中间件,不会达到MVC。

// Add static files to the request pipeline.
app.UseStaticFiles();

application.UseMvc(routes =>
            {
                // setup routes
                // default mapping
                routes.MapRoute(
                    name: "default",
                    template: "{controller=Home}/{action=Index}/{id?}");
                });

您需要在project.json中添加包Microsoft.AspNet.StaticFiles才能获得它。