Если вы действительно думаете, что это необходимо, вы можете использовать:
public T TryCatch<T>(Func<T> theFunction)
{
try
{
return theFunction();
}
catch(Exception e)
{
// You'll need to either rethrow here, or return default(T) etc
}
}
Однако я бы вообще советовал против этого.Вы действительно уверены , что вам нужны блоки try / catch во всех этих методах?Как правило, в не должно быть множества блоков try / catch, если только catch не оборачивает исключение и не перебрасывает ... и даже в C # это реже, чем в Java, например.
Обычно вы должны поймать исключение, если вы можете либо действительно обработать это изящно, либо вам нужно предотвратить взрыв процесса только из-за сбоя одного запроса (например).Я обычно пишу очень мало блоков перехвата - это относительно редко, когда я действительно могу восстановиться после ошибок:)
Подозреваю, что такой подход приведет к значительно более сложной отладке времени.Это может все еще стоит сделать, но вы должны тщательно рассмотреть все плюсы и минусы.