前言

MVC 划分区域可以为项目成立不同的小模块,方便团队之间开发,与增强项目结构的清晰度。

正文

建立区域:

在areas里面建立区域。,然后填写命名。

然后区域注册即可:

但是这样做依然无法解决项目的臃肿问题,是否可以让区域独立一块出去呢?

单独的程序集

如何把area的注册类放在单独的程序集?

1.建立一个类库。

2.剪切刚才建立area的路由类,就是adminAreaRegistration.cs

3.nuget搜索mvc然后添加到新建的类库中。

然后重新运行,index视图,发现依然可以。

因为我们的命名空间没有改变,然后再编译器编译后会在各自类库的dll中生成中间语言,这才是会执行的语言,然后adminArea的dll会合并到webApplication4的dll合并。

这时候相当于还是再webApplication4中执行,好了看来我们的注册类可以分离,那么控制器可不可以分离呢?

同理当然是可以的。

一步一步来:

首先建立了一个mvc项目名字随便吧,意思一下就行,规范的化就用区域名。

先上图:

1.建立了mvcdemoControllers

2.再控制器里面建立了demoUser这个控制器,

3.然后生成了一个index视图。

4.建立了一个MVCdemoRegistrations.cs就是一个普通类,MVCdemo就是区域的名字前面解释了哈。

看下MVCdemoRegistrations写些什么:

里面注册了一个新的路由,那么就必须规范空间命名了,这个可以去看MVC的文件管理的原理。

命名规范为:

因为mvc找到控制器的方法就是从空间,到控制器,再到方法。

好吧,既然我们的控制器能够找到。

所以要把视图放过去:

这样就完成了mvc 的区域划分。

MVC如何创建区域的更多相关文章

  1. 【无私分享:ASP.NET CORE 项目实战(第九章)】创建区域Areas,添加TagHelper

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 在Asp.net Core VS2015中,我们发现还有很多不太简便的地方,比如右击添加视图,转到试图页等功能图不见了,虽然我 ...

  2. [转]【无私分享:ASP.NET CORE 项目实战(第九章)】创建区域Areas,添加TagHelper

    本文转自:http://www.cnblogs.com/zhangxiaolei521/p/5808417.html 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 在Asp ...

  3. 创建区域Areas,添加TagHelper

    创建区域Areas,添加TagHelper 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 在Asp.net Core VS2015中,我们发现还有很多不太简便的地方,比如右 ...

  4. 在ASP.NET MVC中使用区域来方便管理controller和view

    在ASP.NET MVC中使用区域来方便管理controller和view 在mvc架构中,一般在controllers和views中写所有控制器和视图, 太多控制器时候,为了方便管理,想要将关于pe ...

  5. 03-dotnet core创建区域[Areas]及后台搭建

    熟悉MVC的人都知道从MVC4开始引入了区域的机制,区域的创建可以协助你在架构较大的项目中,让独立性较高的部分功能作为一个单独的子MVC系统,降低网站与网站之间的耦合度,也可以通过area切割,让多个 ...

  6. Spring MVC 学习 -- 创建过程

    Spring MVC 学习 -- 创建过程 Spring MVC我们使用的时候会在web.xml中配置 <servlet> <servlet-name>SpringMVC< ...

  7. ASP.NET MVC 5 - 创建连接字符串(Connection String)并使用SQL Server LocalDB

    您创建的MovieDBContext类负责处理连接到数据库,并将Movie对象映射到数据库记录的任务中.你可能会问一个问题,如何指定它将连接到数据库? 实际上,确实没有指定要使用的数据库,Entity ...

  8. MVC中使用EF(1):为ASP.NET MVC程序创建Entity Framework数据模型

    为ASP.NET MVC程序创建Entity Framework数据模型 (1 of 10) By  Tom Dykstra |July 30, 2013 Translated by litdwg   ...

  9. NET Core MVC中创建PDF

    使用Rotativa在ASP.NET Core MVC中创建PDF 在本文中,我们将学习如何使用Rotativa.AspNetCore工具从ASP.NET Core中的视图创建PDF.如果您使用ASP ...

  10. [转]ASP.NET MVC 5 - 创建连接字符串(Connection String)并使用SQL Server LocalDB

    您创建的MovieDBContext类负责处理连接到数据库,并将Movie对象映射到数据库记录的任务中.你可能会问一个问题,如何指定它将连接到数据库? 实际上,确实没有指定要使用的数据库,Entity ...

随机推荐

  1. 3、mysql定位低效率执行SQL

    可以通过以下两种方式定位执行效率较低的 SQL 语句. 慢查询日志 : 通过慢查询日志定位那些执行效率较低的 SQL 语句,用--log-slow-queries[=file_name]选项启动时,m ...

  2. 整数输入框 InputNumberIntZen.vue 只能输入整数 不能输入.等其他字符

    这版的输入限制堪称完美 perfect! 20230712 更新 加入 onBlurHandle 如果输入的02 失焦的时候 变成2 <!--数字输入框 只能输入数字 整型 InputNumbe ...

  3. 在Java中如何优雅的停止一个线程?可别再用Thread.stop()了!

    写在开头 经过上几篇博文的学习,我们知道在Java中可以通过new Thread().start()创建一个线程,那今天我们就来思考另外一个问题:线程的终止 自然终止有两种情况: 1. 线程的任务执行 ...

  4. shell脚本中常用的自定义函数

    在Shell脚本中,你可以定义各种函数来执行不同的任务.以下是20个常用的自定义函数示例,涵盖了从文件操作.文本处理到系统监控等多个方面: 检查文件是否存在 file_exists() { [ -f ...

  5. python json实例解析

    python和json   python这个语言的流行程度不用我说了,估计大家都知道吧.在字符串处理领域,json真是神一样的存在.最近一个项目中用到了,才感觉到它的威力.感觉非常有必要做一个记录和总 ...

  6. Web服务器通信原理

    Web服务器通信原理 1.区分系统 2.DOS系统 3.IP地址 4.域名.DNS 5.端口 6.HTTP协议 7.Web容器 8.整个流程 一.区分系统 主要三个系统Windows.Linux.Ma ...

  7. 记录--webpack和vite原理

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 每次用vite创建项目秒建好,前几天用vue-cli创建了一个项目,足足等了我一分钟,那为什么用 vite 比 webpack 要快 ...

  8. rnacos v0.1.6版本发布

    rnacos是一个用 rust重新实现的nacos. rnacos比java实现的nacos更轻量.快速.稳定:合适在开发.测试.受资限服务等环境平替nacos服务使用. rnacos v0.1.6 ...

  9. SQLSERVER 的表分区(水平) 操作记录1

    --创建表格 (注意) 是唯一(NONCLUSTERED)表示 非聚集索引 CREATE TABLE [dbo].[UserInfo]( [Id] [int] IDENTITY(1,1) NOT NU ...

  10. [Android开发学iOS系列] 删除storyboard需要几步

    删除iOS项目中的storyboard 删除项目中的storyboard, (变成一个纯代码的iOS UIKit项目), 需要几步? 找到storyboard, 删掉它. 直接用ViewControl ...