您的位置:首页 > 编程语言 > ASP

Asp.net MVC 3使用 Area 小结

2011-10-12 10:25 489 查看
原文发表在:http://www.birchlee.com/post/2011/10/12/15.aspx

项目分为三个首页

如: /Home/Index 前台首页

/Admin/Home/Index 后台首页

/OA/Home/Index 办公平台首页

新建一个asp.net MVC3 示例项目: 右键 →添加→Area





直接运行项目:



原因是存在同名的多个Controller,需要配置默认的命名空间。解决方法:

打开Global.asax.cs

public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional },// Parameter defaults
new[] { "Web.Controllers" }// Namespaces 引入默认的命名空间
);

}

http://localhost:49849/ 运行后输出 Home/Index

http://localhost:49849/Admin/Home/Index 运行后输出 Admin/Home/Index

http://localhost:49849/OA/Home/Index 运行后输出 OA/Home/Index

更改路径:

http://localhost:49849/Admin/后报404错误

原因是 Area下面的Admin没有配置默认的 Controller造成的,解决方法:

打开 Area下Admin下 AdminAreaRegistration.cs

new { controller = "Home", action = "Index", id = UrlParameter.Optional }

加上默认的Controller即可。

在此抛砖引玉了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: