使用区域

新建一个MVC项目,取名叫11-4WorkingWithAreas,项目模板选择Internet Application。

1、创建区域

在解决方案管理器中鼠标右击该项目->add->area。

出现对话框,输入要新加的区域名字,这里取名为Admin。

添加后,项目中会新增一个Areas顶级文件夹,其中包含了一个名为Admin的文件夹。

每个象Admin这样的文件夹就是一个区域,里面包含了Controllers、Models、Views文件夹,还包含了一个以该区域名Admin打头的AdminAreaRegistration.cs的文件,这个文件中定义了在本区域内的路由匹配模式。

2、区域内实例

在Admin区域内,添加控制器HomeController:


namespace _11_4WorkingWithAreas.Areas.Admin.Controllers
{
public class HomeController : Controller
{
//
// GET: /Admin/Home/

public ActionResult Index()
{
return View();
}

}
}

在Index动作方法上鼠标右击,添加默认视图Index.cshtml。路径为/Areas/Admin/Views/Home/Index.cshtml.

这样,客户端可以通过"~/Admin/Home/Index"访问到这个页面。

需要注意的是,如果这个时候直接访问"~/",也就是"~/Home/Index"会出现错误。

有两个HomeController会发生名字冲突。

所以,对于区域来说,并不会隔绝路由名字或者控制器名字,都是在整个解决方案中有效的。

解决这个冲突的方法跟前面一样,在主项目的Global.asax中路由定义里面,添加一个匿名类型new[] {
"_11_4WorkingWithAreas.Controllers" }如下:


        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[] { "_11_4WorkingWithAreas.Controllers" }
);

}

这样保证主项目中的控制器优先,避免冲突。

时间: 2024-08-28 18:50:53

使用区域的相关文章

【opencv入门之二】感兴趣区域ROI,线性混合addWeighted

参考网站: http://blog.csdn.net/poem_qianmo/article/details/20911629 1.感兴趣区域ROI //[2]定义一个Mat类型并给其设定ROI区域 Mat imageROI = srcImage1( Rect(200, 250, logoImage.cols, logoImage.rows )); //[3]加载掩摸(必须是灰度图) Mat mask = imread( "dota_logo.jpg", 0 ); //[4]将掩摸拷贝

数据库表:区域表system_district

区域表[system_district] 数据模型 建表脚本 -- ---------------------------- -- Table structure for system_district -- ---------------------------- DROP TABLE IF EXISTS `system_district`; CREATE TABLE `system_district` (   `district_id` bigint(20) unsigned NOT NUL

Halcon学习之六:获取Image图像中Region区域的特征参数

area_center_gray ( Regions, Image : : : Area, Row, Column )    计算Image图像中Region区域的面积Area和重心(Row,Column). cooc_feature_image ( Regions, Image : : LdGray, Direction : Energy,Correlation, Homogeneity, Contrast )   计算共生矩阵和推导出灰度特征值 Direction:灰度共生矩阵计算的方向  

jvm java内存区域的介绍

jvm虚拟机在运行时需要用到的内存区域.广泛一点就是堆和栈,其实不然,堆和栈只是相对比较笼统的说法,真正区分有如下几个 先上图一: 总的就是 java的内存模型 内存模型又分堆内存(heap)和方法区(有时也称为non-heap)和栈 堆又分新生代(Young)和老年代(old/Tenured) 新生代又分默认比例为8:1:1的eden空间.from survivor空间.to survivor空间 当进行垃圾回收时,eden.survivor from 存活得对象会复制到servivor to

第三章 大网 OSPF多区域

实验步骤很简单,理论部分最重要!                      LSA通告 类型 发出 范围 内容 Router    LSA 1 区域内每个路由器 AREA 内部 通告每个路由器的链路状态和接口信息 Network  LSA 2 DR AREA 内部 DR到区域内部其他路由器的方式 汇总网络 LSA 3 ABR AREA 之间 通告区域外部路由器的到达方式 ASBR汇总LSA4 ASBR所在BDR发出 (每个AS 内的BDR) 除所在AS外的 所有AS 通告谁是ASBR AS 外部

利用颜色和形态学两种方法进行车牌区域提取的OpenCV代码

要想提取车牌号,首先你要定位车牌区域嘛,本文分别两种方法用,即颜色和形态学的方法,对车牌区域进行判定.说得是两种方法,其实两种方法并无多大的区别,只是有一步的判断标准不一样而已,你看了下面整理出的的思路就知道两者的区别真的很小了. 方法一:利用颜色提取车牌区域的思路: ①求得原图像的sobel边缘sobelMat ②在HSV空间内利用车牌颜色阈值对图像进行二值化处理,得到图像bw_blue→ ③由下面的判别标准得到图像bw_blue_edge for (int k = 1; k != heigh

InvalidateRect只是增加重绘区域,在下次WM_PAINT的时候才生效

emWIN里面的无效重绘和windows很类似. WM_InvalidateArea()和WM_InvalidateRect()只重绘指定的区域,其他区域不会重绘,这样避免了闪烁,重绘发生在下次WM_PAINT消息中.WM_InvalidateWindow()重绘整个窗口,可以看到明显的闪烁. //////////////////////////////////////////////////////////////////////////////////////////////////////

点击区域外隐藏该区域,event.stopPropagation()

event.stopPropagation() Description: Prevents the event from bubbling up the DOM tree, preventing any parent handlers from being notified of the event. 点击区域外隐藏该区域Example: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta content="chars

UVALive 7146 (贪心+少许数据结构基础)2014acm/icpc区域赛上海站

这是2014年上海区域赛的一道水题.请原谅我现在才发出来,因为我是在太懒了.当然,主要原因是我刚刚做出来. 其实去年我就已经看到这道题了,因为我参加的就是那一场.但是当时我们爆零,伤心的我就再也没有看过那一场的题了.昨天我的队友的高中同学建议我们一起来打一打这场比赛吧,然后我才再次回顾这场比赛.结果一堆琐事,我一共也没有做多久的题,我的队友扎扎实实看了5个小时的题,把另一道水题给过了.全场我们也只过了那么一道题.学姐说,做重现赛和现场赛比较,需要去掉一题,那么我们又爆零了. 题意: 我方有n个人

JAVA内存区域及使用分配

JAVA虚拟机运行时会将JVM使用的内存划分为不同的区域,每个区域负责不同的功能,以及各个区域的创建,销毁都各不相同. 下图是JVM运行时内存数据区的划分, 图1.JVM运行时数据区 1.程序计数器 每个线程都拥有一个独立的程序计数器,用于记录当前线程所要执行的字节码指令,该类内存区域为"线程私有"内存. 2.虚拟机栈 该区域也有人称为栈内存(对应java堆内存),这个叫法不完全正确,但可以便于理解. 该区域也是线程私有的,并且与线程的生命周期相同. 主要负责方法执行的内存部分,在每个