MVC分层处理
MVC和三层其实是八竿子打不着的,MVC是一种全新的开发方式,传统的三层,其实是模块划分,为了结构清晰.而MVC就是MVC,是通过URL路由到控制器,然后到模型,处理完数据然后将结果返回给视图.是与三层没有关系的.MVC也可以基于多层架构,其关键就是让控制器,模型,视图各自所处的命名空间不变,只是代码分层,以此推断,MVC可以是多层.也可以是一层.
下边是asp.net 基于多层的MVC项目的搭建,利用向导生成的项目都是一层的,下图是搭建多层MVC项目的过程
给这个解决方案新加一个类库,命名为asp.net.mvc.Controllers
采用上边的方式,再添加类库asp.net.mvc.Models,这样的话M V C 就分成三个层了,接着就是 把Controllers下的CS文件移动到asp.net.mvc.Controllers类库下,按照同样的方式将models下边的文件移动到asp.net.mvc.Models下.然后将View层的controllers和Models干掉.结果如下图.
最后我们要添加各层之间的引用关系.具体项目引用关系如下.
asp.net.mvc 引用 asp.net.mvc.Controllers 和 asp.net.mvc.Models
asp.net.mvc.Controllers 要引用 asp.net.mvc.Models,这样,项目之间的引用关系就OK了,但是由于Controller层和Model层要依赖一些.net自带的引用.所以我们要给controllers和Modles分别引用各自需要的.net引用.
asp.net.mvc.Controller 需要引用的.net组件如下 (引用时要注意组件的版本已经自己的asp.net mvc的版本),不是system开头的组建自己加的,不是必要的引用,可以不需要.
asp.net.mvc.Models 需要引用的.net组件如下 (引用时要注意组件的版本已经自己的asp.net mvc的版本),不是system开头的组建自己加的,不是必要的引用,可以不需要.
这样就大功告成,不需要修改配置文件,分成多层之后,很过向导不能用,例如选中一个controllers中的方法,鼠标右键,没有创见视图菜单选项,需要自己来手工创建,不过也没有关系,由于asp.net天生就是结构优先于配置,只要你的视图在controllers对应的view文件夹中,并且视图文件和控制器里边的方法名一样,也会正确渲染的.
本文转自http://blog.csdn.net/lvbian/article/details/10603563 因怕图片丢失固全部复制过来。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
2012-04-13 使用COOKIE对像实现保存用户基本信息(结合Session),ASP.Net实现用户登录全过程