アスペクトを使用したいメソッドが1つ(そして1つだけ)あります。IModule.Initializeです。(このメソッドは、私のソリューションの約15のクラスにあります)
次のようになります。
[LogToSplashScreen]
public void Initialize()
{
RegisterViews();
RegisterDesignTimeVMs();
}
メソッド本体が実行される前に、アスペクトでこれを実行したいと思います。
var moduleInfo = new ModuleInformation{ModuleName = "ClassNameHere"};
splashScreenService.ModuleLoadStart(moduleInformation);
そしてこの後:
splashScreenService.ModuleLoadEnd(moduleInformation);
補足:
私はこれを見て、PostSharpを試してみる時間だと思いました。チャンピオンのAOPツールだと聞きました。そこで、NuGetパッケージ(無料バージョンの入手を期待)を起動してインストールしました。
そしてそれはDemoWare(すなわち追加のインストーラー)でロードされます。個人的には気にしません。しかし、私の小さな問題を解決するためだけに、チームがインストーラーを処理する必要はありません。
そしてデモはさておき、UIがあるという事実は(私が推測しているように)私のビルドサーバーにとってそれを難しくします。(私はPackage Restoreを使用します。)
これらはすべて、アスペクト指向プログラミングに「オールイン」する場合に対処したいと思うことです。
しかし、私は1つだけ必要です...
多くの頭痛の種なしで「自分自身を転がす」方法はありますか?