如何重定向到asp.net mvc 4控制器动作一个帖子到php文件

时间:2013-12-09 22:52:58

标签: asp.net-mvc-4

我正在构建一个asp mvc4网站来取代旧的php网站。世界上有一些客户端应用程序出于各种原因连接到旧站点中的某些php文件,并且我已成功重新路由那些使用RouteConfig文件中的routes.MapRoutes。其中每个都在url中发送数据,所以我可以很容易地捕获它:filename.php / {dataVar}。但是,当我像这样重定向时,我发现:

routes.MapRoute(
    name: "RegisterForm",
    url: "register.php",
    new { controller = "PhpReroutes", action = "RegisterForm" }

我的浏览器地址是这样的: localhost:55551 / register.php,动作方法中的断点永远不会被击中。

如果我在重新路由url(url:“register.php /”)和浏览器url(localhost:55551 / register.php /)中添加斜杠,则会触发断点。我无法修改客户端应用程序,所以我必须找到一种方法来使重新路由工作没有斜线。

我已经尝试过看似每个配置,[HttpPost]在端点方法之上,没有,以及我能想到的其他一切。

我有什么遗失的吗?

2 个答案:

答案 0 :(得分:0)

你可能想要使用诸如

之类的东西

返回重定向(“http://www.google.com”);

更新

您可以将您的网址路由编写为:

> public static void RegisterRoutes(RouteCollection routes) {
>     routes.MapPageRoute("",
>         "Category/{action}/{categoryName}",
>         "~/categoriespage.aspx"); }

答案 1 :(得分:0)

请看一下我之前回答过的问题。我相信问题是,使用.php扩展名,MVC不会被调用。

解决方案是让MVC处理所有请求: https://stackoverflow.com/a/18140497/84395