在服务结构控制台应用程序中获取服务信息

时间:2016-10-19 08:55:44

标签: azure-service-fabric

在注册服务的控制台应用程序中(ServiceRuntime.RegisterServiceAsync ...)我想知道配置了哪些服务(servicemanifest.xml)。

有没有办法访问CodePackageActivationContext之类的东西。 在服务中,这可以使用服务基类中的Context来实现,但是在控制台应用程序中没有上下文。

还有其他方法可以在控制台应用程序中获取此信息吗? 我们需要此信息来了解要注册的服务。 在我们非常动态的环境中,生成servicemanifest / applicationmanifest,并不总是需要所有服务。

1 个答案:

答案 0 :(得分:0)

以下是获取CodePackageActivationContext和ServiceType描述的方法:

var activationContext = FabricRuntime.GetActivationContext();
var serviceTypes = activationContext.GetServiceTypes();

您可能需要在ServiceType和serviceFactory委托之间创建某种映射,以便在注册时使用。