2013-04-28 106 views
2

我的代碼奇怪的問題 - 請看看:MVC - url.action - 第二個參數爲空

@Url.Action("IdeaVote","Ideas", new { IdeaID = "1", vote = "For" }) 

值法(從調試器獲得):

IdeaID = 1 ,投票= null

現在一些魔術技巧(反投票和IdeaID)。

@Url.Action("IdeaVote","Ideas", new { vote = "For", IdeaID = "1" }) 

的方法同樣值(從調試器獲得):

票=爲,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); 
     } 

    }); 
+0

請問你的控制器的樣子 - 我指的是參數? – codingbiz 2013-04-28 19:14:56

+0

請看編輯 – whoah 2013-04-28 19:17:46

+0

你如何使用你的Url.Action?這是用來設置錨定標籤的href和? – wellers 2013-04-28 19:35:09

回答

16

你沒有發表你的代碼生成的URL,但在徐振祥Url.Action創建HTML編碼鏈接,所以我認爲你的情況的問題是&符號被替換爲&。嘗試使用Html.Raw輔助解碼此:

"@Html.Raw(Url.Action("IdeaVote","Ideas", new { IdeaID = "1", vote = "For" }))"