ASP.Net Core Razor视图中的查询字符串

时间:2017-05-22 17:38:02

标签: c# razor asp.net-core

如何在剃刀视图中输出&符号&作为查询字符串的一部分?

假设我们在视图中有脚本元素和一些jquery代码:

 $.ajax({
    url: '[?]',
    success: function (content) { $('body').append(content); },
    dataType: 'html',
    timeout: 30000

但我们不能将此类@Url.Content("~/my/custom/url?some=1&query=2")用作 url ,因为&符号会被装饰......

2 个答案:

答案 0 :(得分:1)

如果你能用Razor做到这一点,我已经在ASP.Net Core中完成了查询字符串,如下所示:

@Url.Action("ControllerMethod", new { param1 = "value1". param2 = "value2" })

这将由ASP.Net转换为

/ControllerMethod?param1=value1&param2=value2

答案 1 :(得分:1)

我终于得到了它...它看起来有点棘手,并不比旧的经典ASP.Net更好..但是它有效:

url: '@Url.Content($"~/my/custom/url")@Html.Raw($"?some=1&query=2")'

如果您需要在查询字符串中输出一些自定义数据作为参数,请考虑使用HtmlEncode以避免XSS。