mvc项目controller重命名了,用原网页url访问不了了,怎么办?
如题。MVC项目,手机网站。 公司的官方微信上,用户关注之后,点击相应菜单就可以使用相关的功能。
最近项目重构,有些不规范的命名方式给予了重构。上线后,微信上发现一些网页访问不了了。
联系微信的维护人员不方便,那么,如何通过修改我们的程序可以解决呢?
下面的解决方法:
1. web.config里handlers
怎么设置都不行。
2. global.asax里,截获Request做跳转,没成。
3.RegisterRoutes里,给RouteCollection添加MapRoute,搞定。 如下是代码:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); //note:DefaultController原来的名字的MailItemController,我改成DefaultController后,http://localhost:5120/MailItem/WPYJPage 访问不了了。 加了如下的RouteMap就可以了。(注意:必须放在"Default"这个默认路由前面)
//按如下配置,则有效访问形式为:http://localhost:5120/MailItem/WPYJPage
routes.MapRoute(
"MailItem", // 路由名称
"MailItem/{action}", // 带有参数的 URL
new { controller = "Default", action = "VIPServicePage" } // 参数默认值
); //按如下配置,则有效访问形式为:http://localhost:5120/default/WPYJPage
routes.MapRoute(
"Default", // 路由名称
"{controller}/{action}/{id}", // 带有参数的 URL
new { controller = "Default", action = "VIPServicePage", id = UrlParameter.Optional } // 参数默认值
); ////按如下配置,则有效访问形式为:http://localhost:5120/default/WPYJPage.htm
//routes.MapRoute(
// "MailItem", // 路由名称
// "{controller}/{action}.htm", // 带有参数的 URL
// new { controller = "Default", action = "VIPServicePage" } // 参数默认值
//); }
20151028 补充:
对于asp.net web应用程序, 我创建了一个web页面hao123.aspx, 浏览器里访问时想去掉后缀.aspx,即http://localhost:5206/hao123, 可以在global.asax里处理,如下是代码:
protected void Application_BeginRequest(object sender, EventArgs e)
{
LogHelper.Write(Request.Url.ToString());
if (Request.Url.ToString().EndsWith("hao123"))
{
//Response.Redirect("/hao123.aspx");
Server.Execute("/hao123.aspx");
}
}
mvc项目controller重命名了,用原网页url访问不了了,怎么办?的更多相关文章
- (转载)myeclipse项目名称重命名
myeclipse项目名称重命名 实例1 今天晚上在做一个jsp唱片显示的实例,myeclipse项目名称原本想写music结果写成了musci.这就需要项目名称的重命名,单纯的使用 “重构--> ...
- Eclipse怎样对项目进行重命名?
当创建一个项目时,可能会随便命名一个项目名,如果想要项目名更有意义,或者为了方便后续项目的命名,怎么重命名项目名呢? 第一步在我们的电脑打开eclipse软件,找到需要重命名的项目,如下图所示: 第二 ...
- myEclips 中的项目复制重命名
现在有个项目Pj ,要复制一个Pu 一,退出 myEclips. 二,找到Pj备份一份到其他目录. 三,进入myEclips,F2修改项目名Pj至Pu. 四,将备份拷贝回原目录. 五,将Pj重新引进m ...
- 关于.Net mvc 项目在本地vs运行响应时间过长无法访问时,解决方法!
最近可能是刚升级了电脑使用了window10操作系统,总是遇到了一些以前没有遇到过的事情! 今早来到公司本来准备写bug的,但是当我打开vs运行的时候发现今天的电脑响应的时间明显的要比之前打开网页调试 ...
- 关于scrapy下载文件重命名的办法以及对应url没有文件后缀的办法
https://www.jianshu.com/p/d1bb28cbb6a8 scrapy中负责下载文件的是class MyFilesPipeline(FilesPipeline)类 其中负责下载文件 ...
- javaWeb项目重命名的问题
tomcat项目名称修改 步骤: 1.对工程重命名(选择工程,右键Refactor->Rename) 2.修改Web路径(选择工程,右键Properties->MyEclipse ...
- VS中C++ 项目重命名
应该都有过这样的经历,在Visual studio中创建解决方案,添加几个项目进去,然后开始愉快的敲代码....写代码正欢的时候,却总是感觉那里有些不舒服,一细看,这项目名称取的真心挫,修改个吧.直接 ...
- 在Visual Studio 2010中进行“项目重命名”的有效工具
地址:http://www.cnblogs.com/dudu/archive/2011/12/11/visual_studio_2010_project_rename.html 提示:这个工具一次 r ...
- iOS项目的完整重命名方法图文教程
原文链接:http://www.cocoachina.com/ios/20150104/10824.html iOS项目的完整重命名方法图文教程 前言:在iOS开发中,有时候想改一下项目的名字,都会遇 ...
随机推荐
- WCF 套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的
一个项目需要用到推送的功能,就是服务器主动推送数据给多台客户机.于是采用了WCF的双工通讯netTcpBinding 写好的项目,在本机测试都没有问题. 如果放在局域网内测试,问题出来了:先是安全性问 ...
- JAVA SSH 框架介绍
SSH 为 struts+spring+hibernate 的一个集成框架,是目前较流行的一种JAVA Web应用程序开源框架. Struts Struts是一个基于Sun J2EE平台的MVC框架, ...
- java中数组的相关知识
1. 2.数组的命名方法 1)int[]ages=new int[5]; 2) int[]ages; ages=new int[5]; 3)int[]ags={1,2,3,4,5}; 4)int[ ...
- MyBatis使用动态SQL标签的小陷阱
现在MyBatis越来越受大家的喜爱了,它的优势大家都知道,我就不多说了,直接说重点. MyBatis中提供动态SQL功能,我们可以使用<if><when><where& ...
- iptables之LOG目标 被拦截包分析
iptables之LOG目标 问题 在iptables的INPUT链中发现有大量未知包被拦截,这种情况就有两种可能,一是自己的某个服务的iptables端口没有打开,二是服务器正在遭受攻击 分析 这就 ...
- JSF中使用jquery拦截ajax请求
jsf提供一个内置的jsf.ajax.request方法给我们使用,如果在jquery中使用,则需要做一些更改. 此处因为使用jquery,所以可以不必在控件中添加onclick方法了,可以给控件配 ...
- sql如何做递归层次查询
DROP FUNCTION IF EXISTS `WhlFucGetIDsOnID`; CREATE DEFINER = `root`@`127.0.0.1` FUNCTION `WhlFucGetI ...
- Extjs4.2或以上 使用自定义事件时报错问题
最近使用了extjs 自定义事件模型,代码如下: function Person(name) { this.name = name; this.addEvents('walk'); } Ext.ext ...
- 如何牢记C/C++中const的用法?
(下面以 typename 表示C/C++内某一类型 我常常会搞混 const 放在 typename* 的前面和后面的区别,今天特地查看了它们两个各自的含义,总结了一下: const typenam ...
- bdb log为什么 有 region buffer 和 log cursor buf
对bdb log来说, 在共享内存中 有一块 buffer, 同时每一个 log cursor 都自带一个 malloc的buf. why? 我认为: region buffer存的是log最末尾, ...