类型 'ISomeService' 不是服务接口,因为它不是从接口派生的'INonServiceFabricService'



我有以下设置:

public interface ISomeService : IService, INonServiceFabricService
{
}

其中INonServiceFabricService是一个没有 Service Fabric 依赖项的接口,允许我将应用程序代码与基础结构分离:

public interface INonServiceFabricService
{
Task DoSomething();
}

然后我的实现继承自ISomeService

public class ActualService : StatefulService, ISomeService 
{
public Task DoSomething()
{
// Something
}
}

一切都构建并运行良好,但是当我尝试创建代理时:

var proxy = ServiceProxy.Create<ISomeService>(Uri, new ServicePartitionKey(0)); 

我收到以下错误:

类型"ISomeService"不是服务接口,因为它不是 派生自接口 'INonServiceFabricService'

所以事实证明这是不可能的。

Service Fabric 服务接口(例如,有问题的ISomeService(继承自的每个接口都必须派生自IService。看这里。

错误真的应该说:

类型"INonServiceFabricService"不是服务接口,因为它 不是从接口"IService"派生的

最新更新