2016-05-20 1 views
0

関数の属性によって呼び出されるonEntryやonExitメソッドのようなコードでPostSharpのような機能が欲しいです。同じことの代替案はありますか?.NETでPostSharp以外の属性ベースのログを行う方法はありますか?

ポストシャープはオープンソースではないので、私のプロジェクトではサードパーティのライブラリを使用できません。

+2

ツールリクエストのように見えますが、仕事には明らかなツールがあり、そのツールの使用を拒否している場合、そのツールを避けるための特定の理由*を与えるのに役立ちます。 )これらの同じ理由は、他の「明白な」(しかし、あなたには知られていない)アプローチを排除する可能性があり、b)その理由は実際にはあなたの誤解に基づいている可能性があります。 –

+0

PostSharpの代わりに、MethodDecorator Fodyパッケージを使用することができます。それは同じように動作し、あなたはgithubでそれを見つけるでしょう。サードパーティのコードを使用したくない場合は、あなた自身で書くことが唯一の選択肢ですか? –

+0

@PatrickAllwoodでは、MethodDecorator Fodyパッケージの使用方法に関するサンプルアプリケーションを提供できます。私はそれを実行しようとしましたが、カスタム属性のonentryメソッドは実行されていません。 –

答えて

0

私はポストシャープと同じようなものは何も知らない。

postsharpの無料版は団結

https://msdn.microsoft.com/en-us/magazine/gg490353.aspx

などを見て、いくつかの他のフレームワークがあり、あなたのニーズを満たしていない場合しかしpostsharpは透明ユニティAOPではないです。これは、単一性のインターセプトされたインターフェイス上でしか動作しません(正しい方法でインターセプトされます)。また、私が正しく覚えていれば、エンティティフレームワークからの追跡されたエンティティでうまくいくようないくつかの他の制限があります。

別の無料の方法は、linq拡張を書くことです。それはAOPではないのですが、あなたはpostsharpのような透明ではない。また

Linqhelper.log().cache().execute(some method) 

ようなコードを書くことができますが、それはあなたのニーズに合うかもしれません。

関連する問題