私はasp.net webapiプロジェクトを持っており、コントローラー内のメソッドでアスペクト指向のプログラミングを行うことができました
[Audit("Getting all foos")]
public IEnumerable<Foo> GetAll()
{
return _fooService.GetAll();
}
私が作成したアスペクト/属性は、Audit と呼ばれます。私はオブジェクトの作成に ninject を使用していますが、他の場所では側面が独自に作成されます。
これにより 2 つの問題が発生します。まず、アスペクトにプロパティを挿入できないため、アスペクト内に手動でオブジェクトを作成する必要があります。
第二に、監査アスペクトの作成の作成動作をオーバーライドできないため、ユニットテストが壊れているため、テスト中に模擬的なものではなく実際のものが作成されます。
私は IOC や ninject の経験があまりないので、正直なところ、少し混乱しています。
ninject を介してこれらの側面の作成を強制する方法はありますか?
それが役立つ場合は、すべてのライブラリの最新バージョンを使用しています。
私もNinject Interceptに出くわしましたが、それについては非常に間違っている可能性がありますが、postsharp の代替のように思えます。