前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VS2010+EF Code First 4.1学习MVC3(二)

VS2010+EF Code First 4.1学习MVC3(二)

作者头像
Isaac Zhang
发布2019-09-10 18:11:58
4370
发布2019-09-10 18:11:58
举报
文章被收录于专栏:奔跑的人生

在MVC中,Area使我们的业务逻辑更加清晰,为我们后期的维护带来了极大的便利,那么今天我就来啃啃这一块的东西,可以很方便的替代UrlRouting的一些功能哦~~

Let’s go

.

从上图我们可以看到,新增了Admin和User两个Area,在创建第一个的时候,VS会自动创建一个Areas文件夹。如上图。

我们在User/Controllers上面右键新建一个名为UserController的文件

如下图:

OK,我们可以看到前台和后天都有一个UserController,那么运行会怎么样呢?我们来看看:

Oh,my god.它居然报错了!!!

那么我们应该怎么来处理呢?

第一种:最简单快速的方法修改路由设置

代码语言:javascript
复制
 1 namespace Web.Areas.User
 2 {
 3     public class UserAreaRegistration : AreaRegistration
 4     {
 5         public override string AreaName
 6         {
 7             get
 8             {
 9                 return "User";
10             }
11         }
12 
13         public override void RegisterArea(AreaRegistrationContext context)
14         {
15             context.MapRoute(
16                 "User_default",
17                 "User/{controller}/{action}/{id}",
18                 new { controller = "User", action = "UserList", id = UrlParameter.Optional },
19                 new string[] { "Web.Areas.User.Controllers" }
20             );
21         }
22     }
23 }

同时修改Global文件中的路由信息

代码语言:javascript
复制
1 routes.MapRoute(
2                 "Default", // 路由名称
3                 "{controller}/{action}/{id}", // 带有参数的 URL
4                 new { controller = "user", action = "UserList", id = UrlParameter.Optional },// 参数默认值
5                 new string[] { "Web.Controllers" }//这里是主要注意的地方!!!!
6 
7             );

因为我这是前台的web这和区域中的出现重名Controller。所以改Global,如果你在项目开始的时候已经定义好了Area,那么只需要

更改Area中的XXXAreaRegistration.cs文件就OK了。

来看看我们修改以后的效果吧,是否好了呢?

因为我们默认的Action是列表页面,所以直接打开就是这个页面了~~

好了,就先到这里,后面我会继续深入研究Area下。大家一起进步吧~~

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2013-01-23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档