В настоящее время я разрабатываю приложение ASP.NET MVC3 в VS2010, и у меня возникают проблемы с помощником @Url.Action
. У меня есть запрос ajax, где я использую этот помощник:
var url = '@Url.Action("Action", "Controler", new { a = "a", b = "b" })';
$.post(url).success(function(data) {
...
});
Проблема в том, что после /Controller/Action?a=a&b=b
значение url
, обратите внимание на &
между значениями маршрута. Это не работает, но если я это сделаю:
var url = '@Url.Action("Action", "Controler", new { a = "a", b = "b" })'.replace('amp;', '');
он отлично работает!!!
Мое действие - это примерно так:
public JsonResult Action(string a, string b)
{
...
}
Я отлаживал свое приложение, и действие вызывается, и даже a
есть "a"
, но b
есть null
.
Является ли это желаемым поведением Url.Action
? Я так не думаю. Пожалуйста, помогите мне, что я делаю неправильно? Должен ли я добавить еще один параметр в мой вызов Url.Action
? Спасибо заранее.