我的代码有一个奇怪的问题 - 请看一下:
@Url.Action("IdeaVote","Ideas", new { IdeaID = "1", vote = "For" })
方法中的值(从调试器获取):
IdeaID=1, vote=null
现在有一些神奇的技巧(反向投票和 IdeaID)。
@Url.Action("IdeaVote","Ideas", new { vote = "For", IdeaID = "1" })
方法中的再次值(从调试器获取):
vote=for, IdeaID=null
方法IdeaVote(参数)
public int IdeaVote(string vote, string IdeaID)
我的问题是 - 为什么第二个参数总是为空?为什么会出现这种情况?
问候
编辑:
我的 jQuery 方法与 url.action
$.get("@Url.Action("IdeaVote","Ideas", new { IdeaID = "1", vote = "For" })",function(data)
{
if (data == 1) {
$("#imageVoteAgainst").css("border-width", 0);
$("#imageVoteFor").css("border-width", 1);
}
});
最佳答案
您没有发布由您的代码生成的 URL,而是在一般情况下 Url.Action
创建 HTML 编码的链接,所以我认为你的问题是 &
符号替换为 &
.尝试使用 Html.Raw
帮助解码这个:
"@Html.Raw(Url.Action("IdeaVote","Ideas", new { IdeaID = "1", vote = "For" }))"
关于asp.net-mvc - mvc - url.action - 第二个参数为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16266527/