将MemoryCache与NServiceBus一起使用 - 最好的方法是什么?

时间:2017-01-29 15:31:26

标签: c# caching nservicebus messaging memorycache

我在我的项目中使用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

1 个答案:

答案 0 :(得分:2)

如果ObjectCache为registered as a single instance,则可以including it as a constructor parameter

将其注入所有处理程序