【发布时间】:2013-01-18 12:12:31
【问题描述】:
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 执行此类操作的最佳方法是什么?
【问题讨论】:
-
“支持”是什么意思(是“我该怎么做”还是“有现成的扩展程序”)? “易于使用”是什么意思?
-
易于使用我主要指的是一个现成的扩展,就像 ninject 提供的那样
-
请发布一个指向显示您想要的页面的链接,或粘贴代码 sn-p。对于不了解 Ninject 的人来说,很难猜出你想要什么。
标签: .net autofac publish-subscribe messagebroker