加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

依赖注入 – 在Azure Service Fabric有状态actor中依赖注入IActo

发布时间:2020-12-14 04:51:47 所属栏目:百科 来源:网络整理
导读:对于Azure Service Fabric状态服务,可以按如下方式注入IReliableStateManager: ServiceRuntime.RegisterServiceAsync("MyServiceType",context ={ IReliableStateManager stateManager = new ReliableStateManager(context); return new MyService(stateMan
对于Azure Service Fabric状态服务,可以按如下方式注入IReliableStateManager:

ServiceRuntime.RegisterServiceAsync("MyServiceType",context =>
{
  IReliableStateManager stateManager = new ReliableStateManager(context);
  return new MyService(stateManager);
}

这样你就可以在MyService的单元测试中模拟IStateManager.

对于有状态的演员来说,这似乎是不可能的. IActorStateManager只有一个内部实现:Microsoft.ServiceFabric.Actors.Runtime.ActorStateManager.那么我如何对一个有状态的演员进行单元测试呢?

在我的actor方法的某个时刻,调用了IActorStateManager,但由于我不能注入这个依赖项,所以单元测试似乎是不可能的.

有没有办法解决这个问题还是有另一种解决方案?

解决方法

不,IActorStateManager今天不能注射,但我们正在努力实现它.现在(不使用反射)你必须将你的状态操作包装在你可以注入的东西中,并将该调用调用到状态管理器中,然后你可以模拟它进行单元测试.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读