В листинге контроллера у меня есть
public ActionResult GetByList(string name, string contact)
{
var NameCollection = Service.GetByName(name);
var ContactCollection = Service.GetByContact(contact);
return View(new ListViewModel(NameCollection ,ContactCollection));
}
На странице ASPX я звоню,
<a href="<%:Url.Action("GetByList","Listing" , new {name= "John"} , new {contact="calgary, vancouver"})%>"><span>People</span></a>
У меня проблема с кодом ASPX ... Я могу вытащить записи для имени Джон. но когда я даю contact="calgary, vancouver"
, веб-страница переходит в ошибку.
Как я могу вызвать два параметра в Url.Action
. Я пробовал следующее, но это тоже кажется неправильным.
<a href="<%:Url.Action("GetByList","Listing" , new {name= "John" , contact= " calgary, vancouver" })%>"><span>People</span></a>
asp.net
html
asp.net-mvc-2
url.action
user787788
источник
источник
Это работает для MVC 5:
источник
вы можете вернуть частную коллекцию с именем HttpValueCollection, даже если в документации указано, что это NameValueCollection, с помощью утилиты ParseQueryString. Затем добавьте ключи вручную, HttpValueCollection выполнит кодировку за вас. А затем просто добавьте QueryString вручную:
источник
Вот еще один простой способ сделать это
Где
@Model.ID
это параметрИ вот второй пример.
источник