Итак, я недавно узнал об этой новой уловке использования Func Delegate и лямбда-выражения, чтобы избежать многократной проверки операторов if в моем коде.
Итак, код выглядит примерно так:
public static void SetParameters(Dictionary<string,object> param)
{
Func<Dictionary<string, object>, bool>[] eval =
{
e => e != null ,
e => e.Count ==2 ,
e => e.ContainsKey("Star"),
e => e.ContainsKey("Wars")
};
var isValid = eval.All(rule => rule(param));
Console.WriteLine(isValid.ToString());
}
но мой следующий шаг - я бы тоже хотел проверить ошибки. Так, например, если count! = 2 в моем предыдущем примере, я хотел бы написать сборку сборок ошибок для более ясного исключения ниже.
Так что мне было интересно, как я могу добиться этого, используя аналогичные обозначения Func и Lamdba?
Я придумал свой класс проверки правил
public class RuleChecker
{
public Dictionary<string, object> DictParam
{
get;
set;
}
public string ErrorMessage
{
get;
set;
}
}
Может кто-нибудь помочь, как мне этого добиться?