anybody knows how to transform the FormCollection
into a IDictionary
or how to get a IDictionary
in the post action ?
asp.net-mvc get a dictionary in post action or how to transform FormCollection into a dictionary
Asked Answered
This is just an equivalent of Omnu's code, but it seems more elegant to me:
Dictionary<string, string> form = formCollection.AllKeys.ToDictionary(k => k, v => formCollection[v]);
I think it's a matter of style, i personally think Omu's code is a little more verbose, but it's easier to see what happens. –
Sim
prefer this solution, much neater –
Toolmaker
I did it like this:
var form = new Dictionary<string, string>();
foreach (var key in formCollection.AllKeys)
{
var value = formCollection[key];
form.Add(key, value);
}
On .Net Core this one worked for me.
var collection = Request.Form.Keys.ToDictionary(k => k, v => Request.Form[v].ToString());
public static IDictionary<string, string[]> GetFormParameters(FormCollection collection)
{
IDictionary<string, string[]> formParameters = new Dictionary<string, string[]>();
foreach (var key in collection.AllKeys)
{
if (key == null) continue;
var value = collection.GetValues(key);
// value = CrossSiteAttackUtil.CleanHtml(value);
if (value != null)
{
formParameters.Add(key, value);
}
}
© 2022 - 2024 — McMap. All rights reserved.