Azure Service Fabric:如何从名称服务枚举应用程序中的所有服务

时间:2018-01-18 04:16:25

标签: azure-service-fabric

我有一个简单的无状态服务,需要对同一个应用程序中的每个其他服务进行远程调用。我不想硬编码应用程序中所有其他服务的列表,而是希望从名称服务(或其他任何可以发现的服务)获取所有服务的枚举。然后我的代码将是通用的,并且在将来向应用程序添加新服务时继续工作而不会发生变化。

但我找不到任何显示此枚举功能的文档或示例。这可能吗?

1 个答案:

答案 0 :(得分:1)

是的,您可以使用FabricClient.QueryClient类及其GetServiceListAsync方法:

using(var fabricClient = new FabricClient())
{
    var serviceList = await fabricClient.QueryManager.GetServiceListAsync(appUri);
    // ...
}

这里有相关的documentation