Как украсить все производные методы в C #? - PullRequest
0 голосов
/ 03 ноября 2019

У меня следующая ситуация:

class A
{        
    abstract void foo()
    {
    }
}

многие МНОГИЕ классы наследуются от A и переопределяют foo().

Я хочу перехватить все исключения, выданные из переопределенных foo s.

Я думал о том, чтобы украсить A 'foo и попытаться ... поймать все содержимое foo, и надеялся, что переопределяющие классы foo будуттакже быть украшен попробуйте ... поймать с базы A foo.

Это выполнимо? Если так, то как? Есть ли лучший способ?

1 Ответ

1 голос
/ 03 ноября 2019

Вы можете использовать это:

public class A
{        

    public void Foo()
    {
      try
      {
        DoFoo();
      }
      catch
      {
      }
    }

    protected abstract void DoFoo();

}

Следовательно, вы напишите:

public class B : A
{        

    protected override void DoFoo()
    {
    }

}
...