Forums Neueste Beiträge
 

WCF Client Endpoints

20/10/2009 - 21:20 von saschak | Report spam
Hi,

ich möchte in einem WCF Service alle konfigurierten Client-Endpoint-Namen
ermitteln.

z.B.
Web.config
<!--snip
<system.serviceModel>
<client>
<endpoint name="endpoint1" binding="basicHttpBinding"
address="http://localhost/TestService/Service1.svc"
contract="TestServie.IService1" />
<endpoint name="endpoint2" binding="basicHttpBinding"
address="http://localhost/TestService/Service2.svc"
contract="TestServie.IService2" />
<endpoint name="endpoint3" binding="basicHttpBinding"
address="http://localhost/TestService/Service3.svc"
contract="TestServie.IService3" />
</client>
.
.
.
snap-->

Ergebnis: endpoint1, endpoint2,endpoint3

Ich habe leider keine Idee wie ich an die Namen der Enpunkte komme, außer
vielleicht mit XML parsen .
(das wollte ich aber eigentlich nicht anfangen)

Bitte um Hilfreiche Tipps!

Gruß
Sascha
 

Lesen sie die antworten

#1 saschak
20/10/2009 - 21:59 | Warnen spam
Hi nochmal,

für alle die es interessiert. Ich habe eine Lösung gefunden die
folgendermaßen aussieht:

List<string> endpointNames=new List<string>();
Configuration configuration System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("/");
ServiceModelSectionGroup serviceModelSectionGroupServiceModelSectionGroup.GetSectionGroup(configuration);
ClientSection clientSection=serviceModelSectionGroup.Client;
foreach (ChannelEndpointElement cee in clientSection.Endpoints)
{
endpointNames.Add(cee.Name);
}

Wenn mans weiß siehts ganz einfach aus ;)

Greetz
Sascha

"saschak" schrieb im Newsbeitrag
news:
Hi,

ich möchte in einem WCF Service alle konfigurierten Client-Endpoint-Namen
ermitteln.

z.B.
Web.config
<!--snip
<system.serviceModel>
<client>
<endpoint name="endpoint1" binding="basicHttpBinding"
address="http://localhost/TestService/Service1.svc"
contract="TestServie.IService1" />
<endpoint name="endpoint2" binding="basicHttpBinding"
address="http://localhost/TestService/Service2.svc"
contract="TestServie.IService2" />
<endpoint name="endpoint3" binding="basicHttpBinding"
address="http://localhost/TestService/Service3.svc"
contract="TestServie.IService3" />
</client>
.
.
.
snap-->

Ergebnis: endpoint1, endpoint2,endpoint3

Ich habe leider keine Idee wie ich an die Namen der Enpunkte komme, außer
vielleicht mit XML parsen .
(das wollte ich aber eigentlich nicht anfangen)

Bitte um Hilfreiche Tipps!

Gruß
Sascha

Ähnliche fragen