将字符串作为URL参数传递给Url.Action不起作用

时间:2018-01-09 21:45:45

标签: javascript c# html

我正在尝试使用以下行将字符串作为操作参数传递给Url.Action:

url = '@Url.Action(nameof(Controllers.DailyController.UserBreakEnd), "Daily", new { breakToEnd = 1, confirmation = "BreakCanceled" })';

breakToEnd参数在函数中出现,但确认不是。我错误地传递了字符串吗?

此外,当我这样做时,两个参数都会通过:

url = '@Url.Action(nameof(Controllers.DailyController.UserBreakEnd))?breakToEnd=@(Model.MessageType == "BreakUnder" ? 1 : 2)&Confirmation=BreakCanceled';

有谁看到我做错了什么?

1 个答案:

答案 0 :(得分:0)

似乎不是放置&生成的URL字符串中的参数之间的符号,这是在它们之间放置&

通过使用Html.Raw包围Url.Action解决了这个问题,如下所示:

url = '@Html.Raw(Url.Action(nameof(Controllers.DailyController.UserBreakEnd), "Daily", new { breakToEnd = 1, confirmation = "BreakCanceled" }))';