私は、このような機能を実現したいと思います:
[Atomic]
public void Foo()
{
/* foo logic */
}
[Atomic]
を属性はトランザクションのスコープ内で関数ロジックをラップする属性です。
using(var scope = new TransactionScope())
{
/* foo logic */
scope.Complete();
}
このような属性を書き込む方法はありますか?
私は基本的に同じquestionの前に尋ねましたが、これはAOPを使って行うことができますが、私はこれを書くのを助けることができる最も簡単な概念実装か役立つ記事を探しています純.NET Frameworkを使用しています(RealProxy
とMarshalByRefObject
タイプを使用していますが、これについてはブラウズに関する質問を参照してください)。
この例を正確に解決する必要があります。それは基本的なもののように思えるので、私はそれを最初から始める方法を学びたいと思っています。今のところ、安全でフレキシブルである必要はありません。
あなた自身の教育のためにこれをやっているなら、それは問題ありませんが、ビジネス要件を解決するためにこれをやっているのであれば、すでにWCFとCOM +であなたのために行われています。 –