asp.net URL重新实例
void Application_Start(object sender, EventArgs e)
{
// 在应用程序启动时运行的代码
RegisterRoutes();
}
// 页面存放目录
private readonly string[] _pageMapPath = { @"~/OrderManager/" };
/// <summary>
/// 注册路由
/// </summary>
private void RegisterRoutes()
{
var defaults = new RouteValueDictionary { { "name", "a" }, { "id", @"\d+" } };
RouteTable.Routes.Add("OrderList1",
new Route("OrderList/{id}.html", defaults, new CustomRouteHandler("~/OrderList/OrderList.aspx")));
//var defaults = new RouteValueDictionary { { "name", "1" }, { "id", 2 } };
//RouteTable.Routes.Add("home1",
// new Route("home_{Id}_{name}.html", defaults, new CustomRouteHandler("~/Index.aspx")));
RouteTable.Routes.Add("home",
new Route("home",
new CustomRouteHandler("~/Index.aspx")));
RouteTable.Routes.Add("home.html",
new Route("home.html",
new CustomRouteHandler("~/Index.aspx")));
RouteTable.Routes.Add("index",
new Route("index",
new CustomRouteHandler("~/Index.aspx")));
//将Index.html请求映射为Default.aspx
RouteTable.Routes.Add("Index-1",
new Route("Index.html",
new CustomRouteHandler("~/Index.aspx")));
// 将About.html请求映射为About.aspx
RouteTable.Routes.Add("login",
new Route("login",
new CustomRouteHandler("~/login.aspx")));
// 将About.html请求映射为About.aspx
RouteTable.Routes.Add("login.html",
new Route("login.html",
new CustomRouteHandler("~/login.aspx")));
RouteTable.Routes.Add("login.shtml",
new Route("login.shtml",
new CustomRouteHandler("~/login.aspx")));
// 遍历页面存放目录,为每个.aspx页面添加路由映射
foreach (string mapPth in _pageMapPath)
{
string path = Server.MapPath(mapPth);
var directoryInfo = new System.IO.DirectoryInfo(path);
foreach (System.IO.FileInfo f in directoryInfo.GetFiles())
{
string fileName = f.Name;
if (fileName.EndsWith(".aspx"))
{
string routeName = fileName.Substring(0, fileName.Length - 5);
string url = string.Concat(mapPth.Substring(2), routeName, ".html");
RouteTable.Routes.Add(routeName,
new Route(url,
new CustomRouteHandler(string.Concat(mapPth, fileName))));
}
}
}
}
asp.net URL重新实例的更多相关文章
- asp.net URL传递中文参数System.Web.HttpUtility.UrlEncode与Server.UrlEncode的区别
asp.net URL传递中文参数System.Web.HttpUtility.UrlEncode与Server.UrlEncode的区别(一) HttpUtility.UrlEncode 方法: 对 ...
- asp.net url重写相关技术问题整理
1.IIS7配置URL重写需要注意系统是32位还是64位的 在IIS7配置URL重写的时候,需要添加“脚本映射”,如果是64位系统,会有两个地方存放.net framework分别是32位系统和64位 ...
- ASP.NET URL伪静态重写实现方法
ASP.NET URL伪静态重写实现方法 首先说下,ASP.NET URL伪静态只是将~/a_1.html指向到了~/a.aspx?ID=1,但a.aspx还是真实存在的,你不用./a_1.html来 ...
- ASP.NET导出word实例
ASP.NET导出word实例 最近遇到一个题目就是如何在asp.net中将数据导出到word中,由于数据是动态的,所以需要在后台拼出想要的的格式,翻遍了网页找出了一个比较满意的代码,感谢那位高手.代 ...
- asp 获取url 返回值 和 对json 返回值的处理
Function GetHttpPage(HttpUrl,endoce) If endoce = "" Then endoce = "GB2312" If Is ...
- 很不错的NGINX URL重写实例
转自:http://www.jbxue.com/article/2187.html 本文介绍nginx URL重写的相关知识,包括301重定向的内容等,希望对大家有所帮助. nginx rewrite ...
- 《Entity Framework 6 Recipes》中文翻译系列 (21) -----第四章 ASP.NET MVC中使用实体框架之在页面中创建查询和使用ASP.NET URL路由过虑
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 4.2. 构建一个搜索查询 搜索数据是几乎所有应用的一个基本功能.它一般是动态的,因 ...
- 【记录】ASP.NET URL 特殊字符
终极版 URL 编码,使用 Uri.EscapeDataString: string url = "C++ C#"; Console.WriteLine(Uri.EscapeDat ...
- ASP.NET Ajax 简单实例
本实例讲解Ajax 调用WCF服务. 1.建立一个网站,并在其中添加一个WCF服务(这里需要选择Ajax-Enabled WCF Service). 2.IDE会自动生成一个SVC文件. 3.服务代码 ...
随机推荐
- 再看Java基本类型
Java中的基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte.short.int.long.float.double. 数值类型又可以分为整数类型byte.short ...
- ZOJ1450 BZOJ1136 BZOJ1137 HDU3932[最小圆覆盖]
Minimal Circle Time Limit: 5 Seconds Memory Limit: 32768 KB You are to write a program to find ...
- C#实现航班查询及预订
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...
- Python md5解密
这篇文章原来在我盘里存了好久了~ 16年9月的. 这 Python的长进没多少啊.现在都17.4了 哎~~ Python之POST提交解密MD5 用易语言写出来md5解密软件后感觉一点成就感 ...
- Mac系统下XAMPP的简单使用
XAMPP简单使用的方法使用方法 XAMPP的简介即应用在博客园也有 1.安装完成后打开manager-osx.app 把Manager Servers下的三个server打开(使之变绿如下) 第一个 ...
- LNMP搭建04 -- 配置Nginx支持PHP
首先建立存放网页文件的目录,执行 mkdri /usr/local/server/www 然后进入到该目录中 cd /usr/local/server/www 然后创建一个测试文件: phpinfo ...
- 获取登陆用户的ip
function getip(){ static $ip = null; if($ip !=null) return $ip; if(getenv('REMOTE_ADDR') ...
- 💈 A Cross-Thread Call Helper Class
Conmajia © 2012, 2018 Introduction When you are working on background threads and call frontend GUI ...
- centos/linux下的安装Nginx
1.安装gcc编译器 先查看gcc编译器是否安装 在shell控制台输入gcc-v 如果没有安装请看下一步 使用yuma安装gcc yum intsall gcc 看到如下视图则说明安装成功 2.安装 ...
- Asp.Net Core2.0 基于QuartzNet任务管理系统
Quartz.NET官网地址:https://www.quartz-scheduler.net/ Quartz.NET文档地址:https://www.quartz-scheduler.net/doc ...