Créer RouteValueDictionary avec plusieurs valeurs clés

J'aimerais revenir un RedirectToRouteResult qui envoie les utilisateurs vers une URL comme suit:

/MyController/MyAction/id?newid=3&newid=5&newid=7

La newid paramètre a plusieurs valeurs.

Mon appel ressemble: return RedirectToAction(string.Empty, routeValues);

Voici ce que j'ai essayé jusqu'à présent, et qui ne fonctionnent pas:

//...?newid%5B0%5D=3&newid%5B1%5D=5&newid%5B2%5D=7
var routeValues = new RouteValueDictionary {
    {"id", myid},
    {"newid[0]", 3},
    {"newid[1]", 5},
    {"newid[2]", 7},
};

//...?newid=System.Int32%5B%5D
var routeValues = new { id = myid, newid = new int[] { 3, 5, 7 } };

//...?newid=System.String%5B%5D
var routeValues = new { id = myid, newid = new string[] { "3", "5", "7" } };

//...?newid=System.Int32%5B%5D
var routeValues = new RouteValueDictionary {
    {"id", myid},
    {"newid", new int[] { 3, 5, 7 } }
};

Quel est le secret pour faire ce travail?

OriginalL'auteur Dave Mateer | 2012-02-15