How do you get a list of all ModelState error messages? I found this code to get all the keys:
( Returning a list of keys with ModelState errors)
var errorKeys = (from item in ModelState
where item.Value.Errors.Any()
select item.Key).ToList();
But how would I get the error messages as a IList or IQueryable?
I could go:
foreach (var key in errorKeys)
{
string msg = ModelState[error].Errors[0].ErrorMessage;
errorList.Add(msg);
}
But thats doing it manually – surely there is a way to do it using LINQ? The .ErrorMessage property is so far down the chain that I don't know how to write the LINQ…
Best Answer
You can put anything you want to inside the
select
clause:EDIT: You can extract multiple errors into separate list items by adding a
from
clause, like this:Or:
2nd EDIT: You're looking for a
Dictionary<string, string[]>
: