C# 我无法正确设置Global.asax
我已经在Global.asax中添加了一个新映射,但它不能正常工作 我新添加的链接是“” 下面是我在Global.asax中的新代码C# 我无法正确设置Global.asax,c#,asp.net,asp.net-mvc,asp.net-mvc-4,mapping,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 4,Mapping,我已经在Global.asax中添加了一个新映射,但它不能正常工作 我新添加的链接是“” 下面是我在Global.asax中的新代码 routes.MapRoute( "ProductCategories", "Admin/ProductCategories/{ID}", // Route name new { controller = "Admin", action = "ProductCategories", ID =
routes.MapRoute(
"ProductCategories",
"Admin/ProductCategories/{ID}", // Route name
new { controller = "Admin", action = "ProductCategories", ID = UrlParameter.Optional } // Parameter defaults
);
但它似乎转到了常规映射,所以它使用我的主布局作为常规页面
因为这将是一个管理页面,我不希望它使用主布局。我做错了什么?我应该怎么做才能修复它?在您的视图中,添加以下部分:
@{
Layout = null;
}
您可以在~/Areas/admin/Views/Shared/_layout.cshtml中为管理员页面创建单独的布局,并在_ViewStart.cshtml文件中定义它,该文件应在~/Areas/admin/Views中创建,代码如下
@{
Layout = "~/Areas/Admin/Views/Shared/_Layout.cshtml";
}
问题是布局不正确还是布线行为不正确?这是一个不正确的布线问题。我在默认路由之前添加了这个。我认为布局问题与路由无关。同意-路由似乎不是问题所在。如果你得到的是正确的观点,那么肯定不是。但是路由与布局页面无关。您的新路由实际上对应于默认的rote
{controller}/{action}
,因此您确定将这样的路由添加到项目中是有意义的吗?谢谢,这是可行的,但我想我也应该修复Global.asax。您必须删除在Global.asax文件中放置的映射。布局问题与布线无关。用克里斯蒂娜的溶液就行了。