我在我的项目中使用NServiceBus,每次应用程序收到消息时,它会一次又一次地构造类的实例。 我希望它存储一些最初加载的信息以供进一步使用。 我无法在Handler类中实例化内存存储,而且我无法使用数据库,因为它太慢了。 我想使用MemoryCache但我需要从Hander访问它。 请告知最佳方法。
这是我的代码:
//this is a console app
class Program{
...
}
//this is a Handler of NServiceBus:
public class MyCommandHandler: IHandleMessages<MessageCommand>
{
public Task Handle(MessageCommand message, IMessageHandlerContext context)
{
...
return context.Publish(obj);
}
}//class
答案 0 :(得分:2)
如果ObjectCache为registered as a single instance,则可以including it as a constructor parameter
将其注入所有处理程序