如何枚举端点网址?

时间:2015-05-29 07:23:19

标签: wcf

我有一个WCF服务。它使用配置文件中的设置。 它包含一些通过http,net.tcp等工作的子服务。 我想创建一个方法,它将返回所有已配置的端点URL。 它将用于为客户端应用程序提供接收URL字符串的可能性。

我如何在WCF服务中做到这一点?

1 个答案:

答案 0 :(得分:1)

你可以尝试这样的事情:

    private static List<Uri> GetClientsInfo()
    {
        var adressList = new List<Uri>();
        var clientSection = (ConfigurationManager.GetSection("system.serviceModel/client") as ClientSection);
        if (clientSection != null)
        {
            foreach (ChannelEndpointElement endPoint in clientSection.Endpoints)
            {
                adressList.Add(endPoint.Address);
            }
        }

        return adressList;
    }

您也可以使用“WebConfigurationManager”代替“ConfigurationManager”(取决于您的应用类型,更多信息What's the difference between the WebConfigurationManager and the ConfigurationManager?