我有一个调用PHP脚本(script.php)的桌面系统,我将一个名为“x”的参数发送到此脚本(例如:script.php?x = 123),但现在PHP脚本正在在ASP.NET / MVC中重写,但我无法更改桌面系统,然后我创建了这样的路由:
routes.MapRoute("ScriptPHP",
"myscript/script.php",
new { controller = "MyController", action = "MyAction", x = UrlParameter.Optional }
);
问题是:MyAction收到一个名为“id”(MyAction(int id)
)的参数,只有当我调用“script.php?id = 123”时,此路由才有效。
如何发送参数“x”,此路由将“x”转换为“id”参数名称?有可能吗?
注意:我无法更改操作参数。
答案 0 :(得分:1)
您需要将操作方法更改为以下
public ActionResult MyAction(int x)
{
}
一旦你这样做,它就会像你期望的那样工作。
答案 1 :(得分:0)
看看here。您可以将其扩展为别名查询参数。