获取Action的ModelState中所有验证信息的方式(Asp.net MVC)

Asp.net MVC中服务端的数据验证,通常都是在模型中利用ValidationAttribute特性完成。假如验证不通过,在Razor视图中,可以通过调用@Html.ValidationSummary()获取数据验证的反馈信息,而在Action中可以通过如下方式手工获得反馈信息:

    string s = "";
    foreach (var item in ModelState) {
        s = s + item.Key + ":" + item.Value.Errors[0].ErrorMessage + "\n";
    }


顺便在附上《C# Dictionary 字典的几种遍历方法》http://www.chinaa9.com/html/201305/268.shtml

    Dictionary < string, int > list = new Dictionary < string, int > ();
    list.Add("d", 1);
    //3.0以上版本  
    foreach(var item in list) {
        Console.WriteLine(item.Key + item.Value);
    }
    //KeyValuePair<T,K>  
    foreach(KeyValuePair < string, int > kv in list) {
        Console.WriteLine(kv.Key + kv.Value);
    }
    //通过键的集合取  
    foreach(string key in list.Keys) {
        Console.WriteLine(key + list[key]);
    }
    //直接取值  
    foreach(int val in list.Values) {
        Console.WriteLine(val);
    }
    //非要采用for的方法也可  
    List < string > test = new List < string > (list.Keys);
    for (int i = 0; i < list.Count; i++) {
        Console.WriteLine(test[i] + list[test[i]]);
    }
    Dictionary(TKey, TValue)


你可能感兴趣的:(获取Action的ModelState中所有验证信息的方式(Asp.net MVC))