生成具有多个输入参数的URL

时间:2018-10-01 05:19:26

标签: c# asp.net-mvc

我想从我的MVC应用程序Razor视图中生成一个URL,其中将包含多个参数输入,例如:example.com/Index?id=1&bool=true

我已经尝试过:@Url.Action("Index?id=1&bool=true", "MyController"),但这根本不起作用。

我想问一下是否有什么想法可以像上面的示例那样获得输出?预先谢谢你。

2 个答案:

答案 0 :(得分:0)

请尝试将输入保存在隐藏字段中,以便在导航至其他页面时,数据将自动通过查询字符串发送。例如

@Html.Hidden("Id", Model.Id);

该ID将在查询字符串中发送

答案 1 :(得分:0)

您将需要更改默认路线RouteConfig.cs

routes.MapRoute(
    name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );

使用

routes.MapRoute(
    name: "Default",
                url: "{controller}/{action}",
                defaults: new { controller = "Home", action = "Index" }
            );

然后使用您的URL.Action

@Url.Action("Index", "ControllerName", new { id = 1, @bool = true })