6

すべてのメソッドに「try...catch」と書くのではなく、属性を使用して例外処理を行うことは可能ではないかと考えていました。

たとえば、各メソッドは次のようになります。

public void DoSomething()
{
    try
    {
        // do something
    }
    catch (Exception ex)
    {
        // exception handling rules, always the same.
        throw;
    }
}

私が欲しい:

[HandleException]
public void DoSomething()
{
    // do something
}

出来ますか?

4

3 に答える 3

3

これは、AOP (アスペクト指向プログラミング) を介して実行できます。そのためのフレームワークの 1 つが PostSharp です。サンプルを見るhttp://www.sharpcrafters.com/solutions/exception

于 2012-12-27T07:45:32.187 に答える
0

また、独自の MSBuild タスクを作成することもできます。 ここでは、オープンソース プロジェクトを見つけることができます。コンパイル時に、 libINotifyPropertyChangedを使用してプロパティ セッターにサポート コードを挿入します。Mono.Cecil

于 2012-12-27T07:50:34.760 に答える