Autofacは、多対多のパブリッシュ/サブスクライブイベントメッセージングを実行するための使いやすいメッセージブローカーをサポートしていますか?
編集:
public class Service1
{
[Publish("message://an-event")]
public event Event<EventParams> AnEvent;
public void DoSomething()
{
// do something
// [...]
// publish message
if (AnEvent != null)
AnEvent(this, new EventParams(something))
}
}
public class Service2
{
[Subscribe("message://an-event")]
public OnAnEvent(object sender, EventParams eventParams)
{
Console.WriteLine("Hello World from Service2")
}
}
public class Service3
{
[Subscribe("message://an-event")]
public OnAnEvent(object sender, EventParams eventParams)
{
Console.WriteLine("Hello World from Service3")
}
}
Ninjectsメッセージブローカー拡張機能の優れた点は、そのシンプルさです。何かを公開するイベントと、このイベントをサブスクライブするメソッドにアノテーションを追加するだけで済みます。コンテナは自動的に接続を処理します。サービスをバインドするだけです。
autofacは似たようなものがありますか?そうでない場合、autofacでこのようなことを行うための最良の方法は何ですか?