我在哪里添加这个" ControllerHelpers"类?

时间:2015-10-06 21:06:09

标签: helpers asp.net-mvc-controller modelstatedictionary

在一个非常古老的.NET教程中," Nerd Dinner",它谈到了使用Helper Class进行规则违规。一切似乎都是直截了当的,除了我不知道把这个课放在哪里,所以我可以参考它。我是MVC的新手。

以下所有内容均来自Nerd Dinner Tutorial

使用AddRuleViolations助手方法

我们的初始HTTP-POST Edit实现在其catch块中使用foreach语句来遍历Dinner对象的规则冲突并将它们添加到控制器的ModelState集合中:

catch {
    foreach (var issue in dinner.GetRuleViolations()) {
        ModelState.AddModelError(issue.PropertyName, issue.ErrorMessage);
    }

    return View(dinner);
}

我们可以通过添加" ControllerHelpers"来使这段代码变得更清晰。 NerdDinner项目的类,并实现" AddRuleViolations"其中的扩展方法为ASP.NET MVC ModelStateDictionary类添加了一个辅助方法。这个扩展方法可以封装使用RuleViolation错误列表填充ModelStateDictionary所需的逻辑:

public static class ControllerHelpers {

public static void AddRuleViolations(此ModelStateDictionary modelState,IEnumerable错误){

   foreach (RuleViolation issue in errors) {
       modelState.AddModelError(issue.PropertyName, issue.ErrorMessage);
   }

} }

0 个答案:

没有答案