Dans ASP.NET MVC 2, vous pouvez utiliser cette URL et cette méthode de commande:Dans ASP.NET MVC 2, puis-je désérialiser une chaîne de requête dans un tableau à l'aide du modèle par défaut ModelBinder?
GET http://server/controller/get?id=5
public ActionResult Get(int id)
{
...
}
Et le ModelBinder convertira le id=5
queryString à id = (int) 5
dans le paramètre de la méthode. Cependant, cela ne fonctionnera pas:
GET http://server/controller/get?idlist=1,2,3,4,5
public ActionResult Get(int[] idlist)
{
...
}
idlist
sera nulle dans le paramètre. Bien que l'analyse de ce soit assez trivial, je me demandais s'il y avait un moyen de changer la signature de la méthode ou la chaîne de requête afin que ModelBinder par défaut désérialise automatiquement les tableaux/collections?
Aïe, je vais en tenir à 'idlist.Split (« ») .Sélectionnez (x => Convert.ToInt32 (x)); –
Le modelbinder par défaut ne prend pas en charge le second exemple. – MartinF