ASP.Net

WCF app.config에 있는 EndPoint 찾기

캡틴노랑이 2015. 10. 29. 10:09
반응형

아래 코드가 EndPoint를 찾는 코드.


using System.Configuration;

using System.ServiceModel.Configuration;



Configuration configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);


ServiceModelSectionGroup serviceModelSectionGroup = ServiceModelSectionGroup.GetSectionGroup(configuration);


ClientSection clientSection = serviceModelSectionGroup.Client;

clientSection.Endpoints[0].Address;



서비스명을 던져주면 해당 주소를 반환해준다.

private string ServiceEndPointSearch(string serviceName)

{

    Configuration configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);

    ServiceModelSectionGroup serviceModelSectionGroup = ServiceModelSectionGroup.GetSectionGroup(configuration);

    ClientSection clientSection = serviceModelSectionGroup.Client;

    int endPointRow = 0;


    for (int i = 0; i < clientSection.Endpoints.Count; i++)

    {

        if (clientSection.Endpoints[i].Contract.ToString().Equals(serviceName))

        {

            endPointRow = i;

            break;

        }

    }


    return clientSection.Endpoints[endPointRow].Address.ToString();

}

반응형