43 votes

Comment une collection de formulaires peut-elle être énumérée dans ASP.NET MVC?

Comment puis-je énumérer toutes les clés / valeurs d'un FormCollection (system.web.mvc) dans ASP.NET MVC ?

89voto

Steve Willcock Points 11859

Voici 3 façons de le faire spécifiquement avec un objet FormCollection.

 public ActionResult SomeActionMethod(FormCollection formCollection)
{
  foreach (var key in formCollection.AllKeys)
  {
    var value = formCollection[key];
  }

  foreach (var key in formCollection.Keys)
  {
    var value = formCollection[key.ToString()];
  }

  // Using the ValueProvider
  var valueProvider = formCollection.ToValueProvider();
  foreach (var key in valueProvider.Keys)
  {
    var value = valueProvider[key];
  }
}
 

4voto

James Avery Points 2538
foreach(var key in Request.Form.AllKeys)
{
   var value = Request.Form[key];
}

1voto

Losbear Points 1045

J'utilise ceci:

 string keyname;
string keyvalue;

for (int i = 0; i <= fc.Count - 1; i++)
{
    keyname = fc.AllKeys[i];
    keyvalue = fc[i];
}
 

J'espère que ça aide quelqu'un.

1voto

Colin Points 5006

Dans .NET Framework 4.0, le code permettant d’utiliser ValueProvider est le suivant:

         IValueProvider valueProvider = formValues.ToValueProvider();
        foreach (string key in formValues.Keys)
        {
            ValueProviderResult result = valueProvider.GetValue(key);
            string value = result.AttemptedValue;
        }
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X