web-dev-qa-db-ja.com

Url.Action()で複数のパラメーターを渡す方法

Url.Actionから複数のパラメーターを渡したいのですが、ここにコードが表示されています

 window.location.href = "@Url.Action("ABC", "XYZ", new { @A= ViewBag.A , @B =  ViewBag.B })";

そしてこれはコントローラーの私のメソッドです[〜#〜] xyz [〜#〜]

 public ActionResult ABC(string A, string B)
 {
    // Some Code
 }

私は常に最初のパラメーターでのみ値を取得し、2番目のパラメーターは常にnullです。私が[〜#〜] b [〜#〜]最初の場合。 2番目のものは常にnullです。 VIEWは基本的にJavaScript機能の下にあります。 URLは次のとおりです:http://localhost/CargoMainSite/XYZ/ABC?A=1&B=2パラメータ1とパラメータ2の間に、「amp;」という余分なテキストがあることに注意してください。明示的に削除した場合。それは正常に動作し、適切な値を取得します。

6
Affan Shahab

Url.Actionが機能しない理由は、urlの&charがエンコードされているため、以下のように@ Html.Rawを使用する必要があります。

 window.location.href = "@Html.Raw(@Url.Action("ABC", "XYZ", new { @A= ViewBag.A , @B =  ViewBag.B }))";
18