MVC: Могу ли я использовать ModelState внутри класса вне контроллера?

Могу ли я сделать это с одним классом?

    ...
    using System.Web.Mvc;
    ...

    public static class aaa 
    {

      public static test() {

         if (something) ModelState.AddModelError("", "test");
      }

    }

вызов внутреннего контроллера:

...

public class mycontroler {

     public void Index() {
          ....
          aaa.test();
          ....
     }

}

Возможно ли это? Я хочу управлять кодом внутри классов в другой части контроллера.

Ответ 1

Вы можете передать свое состояние модели примерно так:

public static void test(ModelStateDictionary ModelState)
{
    if (something) ModelState.AddModelError("", "test");
}

И вызов изнутри вашего контроллера:

aaa.test(ModelState);

Ответ 2

Нет, вы не можете. То, что вы указываете внутри контроллера, - это его свойство, а не класс. Вы все равно можете передать его методу, который вызывается как аргумент.