MVC Route路由
由于某些原因,需要默认区域,所以需要对路由进行设置
具体实现如下:
using System.Web;
using System.Web.Mvc;
using System.Web.Routing; namespace Qxun.Web.WeScene101.Areas.Mobile
{
public class MobileAreaRegistration : AreaRegistration
{
public override string AreaName
{
get
{
return "Mobile";
}
} public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Mobile_default",
"{controller}/{action}/{id}",//去掉区域设置mobile,这样匹配的时候,根据controller重写的匹配方法,就能筛选出区域是mobile的了,不过controller可不能和screen排除的一样,要不然就进到screen的区域路由里面去了
new { action = "Index", id = UrlParameter.Optional, controller = "Home" }
, new { controller = new ControllerConstraint() }
);
} }
/// <summary>
/// 设置默认的区域,使用命名空间system.web。继承IRouteConstraint,重写比较方式
/// </summary>
public class ControllerConstraint : IRouteConstraint
{
public bool Match(HttpContextBase httpContext, Route route, string parameterName, RouteValueDictionary values, RouteDirection routeDirection)
{
//获取controller的值
var value = values["controller"].ToString().ToLower();
//只能拿到false的情况,排除掉false的,即都是属于区域mobile的了
if (value.Equals("screen"))
{
return false;
}
else
{
return true;
}
}
}
}
MVC Route路由的更多相关文章
- asp.net mvc Route路由映射.html后缀 404错误
[HttpGet] [Route("item/{id:long:min(1)}.html")] 首先RouteConfig配置文件RegisterRoutes方法添加以下代码: r ...
- Asp.Net MVC part3 路由Route
路由Route路由规则Route:可以查看源代码了解一下构造方法,需要指定路由格式.默认值.处理器三个值路由数据RouteData:当前请求上下文匹配路由规则而得到的一个对象,可以在Action中通过 ...
- .net core 源码解析-mvc route的注册,激活,调用流程(三)
.net core mvc route的注册,激活,调用流程 mvc的入口是route,当前请求的url匹配到合适的route之后,mvc根据route所指定的controller和action激活c ...
- mvc route的注册,激活,调用流程
mvc route的注册,激活,调用流程(三) net core mvc route的注册,激活,调用流程 mvc的入口是route,当前请求的url匹配到合适的route之后,mvc根据route所 ...
- ASP.NET MVC的路由
好久没写博文了,感觉最近好像少了点动力.唉!这回就看看这个MVC的路由. 说这个路由机制其实不是MVC里面特有的,ASP.NET里面本身就有的,只不过在WebForm里面一般比较少用,而在MVC里就是 ...
- mvc url路由参数的加密和解密
查看某个信息的时候一般会在url上加上该信息在数据库中对应的主键id(而且一般是自增的) url是这样子的 xxxDetail/1 , 虽然对于我们开发人员来说可以这种显式的数据库主键会方便调试过程, ...
- 理解ASP.NET MVC的路由系统
引言 路由,正如其名,是决定消息经由何处被传递到何处的过程.也正如网络设备路由器Router一样,ASP.NET MVC框架处理请求URL的方式,同样依赖于一张预定义的路由表.以该路由表为转发依据,请 ...
- 一步步学习ASP.NET MVC3 (14)——Route路由
请注明转载地址:http://www.cnblogs.com/arhat 由于今天是星期六,所以多写几篇,感觉前几天的忙碌没有及时发布文章,趁着周末老魏尽力的多写几篇文章.因为本系列基本上快结束了,所 ...
- 返璞归真 asp.net mvc (2) - 路由(System.Web.Routing)
原文:返璞归真 asp.net mvc (2) - 路由(System.Web.Routing) [索引页] [源码下载] 返璞归真 asp.net mvc (2) - 路由(System.Web.R ...
随机推荐
- 简单5步,释放Mac磁盘空间
收藏一下,以备后用 http://ourmacs.com/mactech/340
- 【C#】List<T>对象的深复制
一.List对象中的T是值类型的情况(int 类型等) 对于值类型的List直接用以下方法就可以复制: List<T> oldList = new List<T>(); old ...
- C++报错集锦
(一)invalid initialization of non-const reference of type 'float&' from a temporary of type 'floa ...
- 01 Developing Successful Oracle Application
本章提要-------------------------------本章是概述性章节1. 介绍了了解数据库内部结构对于开发的重要性2. 介绍了如何才能开发好的数据库应用程序------------- ...
- etl获取转换文件名
- spring复习 -day1:Spring简介 、 Spring容器 、 Spring IOC
Spring创建对象方法 创建对象过程: 第一步:添加SpringIOC环境 (1)在WebRoot/WEB-INT/lib文件夹下,引入SpringIOC配置环境的jar包 如图: (2)在sr ...
- 【转】浅谈.net remoting 与webservice
1. .NET Remoting .NET Remoting是微软随.NET推出的一种分布式应用解决方案,被誉为管理应用程序域之间的 RPC 的首选技,它允许不同应用程序域之间进行通信(这里的通信可以 ...
- java_Observer Design Pattern
摘自: http://www.ntu.edu.sg/home/ehchua/programming/java/J4a_GUI.html Creating Your Own Event, Source ...
- samtools faidx 命令处理fasta序列
samtools faidx 能够对fasta 序列建立一个后缀为.fai 的文件,根据这个.fai 文件和原始的fastsa文件, 能够快速的提取任意区域的序列 用法: samtools faidx ...
- css制作上下左右的箭头
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...