IStatelessServiceFactory

IStatelessServiceFactory

有什么方法可以将依赖项注入(inject)到Azure Service Fabric Actor的构造函数中吗?

最佳答案

一段时间以前,我已经使用dotPeek进行了一些深入的探讨(尝试通过每次调用从Autofac生存期作用域中解析参与者),我认为,诀窍是创建自己的StatelessActorServiceFactory实现以及您自己的扩展方法向 Actor 注册。尽管工厂类被标记为内部类,但其接口(interface)(IStatelessServiceFactory)和它创建的服务类型(StatelessActorServiceInstance)都是公共(public)的。不幸的是,StatelessActorServiceInstance看起来并不是可扩展的(我希望这只是一个疏忽)。

不幸的是,看起来WcfActorCommunicationProvider也被标记为内部,因此您几乎必须从头开始创建自己的管道:

  • 实现自己的IStatelessServiceFactory
  • 实现您自己的IStatelessServiceInstance,IActorService
  • 实现您自己的IActorCommunicationProvider
  • 实现您自己的IActorHost

  • 看起来真的不值得付出更多的努力了吗? :-/

    那是我现在放弃的地方。考虑到公共(public)API的相对不成熟,我认为现在不值得尝试自己动手做,因为如果这种功能全部出现,他们可能会打破这种方式您自己实现的任何东西。

    07-26 06:35