En listant le contrôleur que j'ai,
public ActionResult GetByList(string name, string contact)
{
var NameCollection = Service.GetByName(name);
var ContactCollection = Service.GetByContact(contact);
return View(new ListViewModel(NameCollection ,ContactCollection));
}
Dans la page ASPX que j'appelle,
<a href="<%:Url.Action("GetByList","Listing" , new {name= "John"} , new {contact="calgary, vancouver"})%>"><span>People</span></a>
J'ai un problème dans le code ASPX ... Je peux extraire les enregistrements pour le nom john. mais quand je donne le contact="calgary, vancouver"
, la page Web va à l'erreur.
Comment puis-je appeler deux paramètres dans le Url.Action
. J'ai essayé ci-dessous mais cela me semble également faux.
<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
la source
la source
Cela fonctionne pour MVC 5:
la source
vous pouvez retourner une collection privée nommée HttpValueCollection même si la documentation indique qu'il s'agit d'un NameValueCollection à l'aide de l'utilitaire ParseQueryString. Ajoutez ensuite les clés manuellement, HttpValueCollection effectue l'encodage pour vous. Et puis ajoutez simplement le QueryString manuellement:
la source
Voici une autre façon simple de le faire
Où
@Model.ID
est un paramètreEt ici, il y a un deuxième exemple.
la source