Zasadniczo w swojej usłudze powinieneś być w stanie zdefiniować dowolną liczbę punktów końcowych usługi na dowolnej liczbie portów.
Są dwa sposoby, aby to zrobić:
- definiują adres bazową i względny adres w swojej końcowego usługi
- określić pełny adres w każdym punkcie końcowym
Jeśli zrobić opcję nr 1, będziesz miał coś takiego:
<service name="YourService">
<host>
<baseAddresses>
<add baseAddress="net.tcp://YourServer:5151/Services" />
</baseAddresses>
</host>
<endpoint name="endpoint1"
address="Service1"
binding="netTcpBinding"
contract="IYourService" />
<endpoint name="endpoint2"
address="Service2"
binding="netTcpBinding"
contract="IYourService" />
</service>
Więc w tym przypadku, masz dwa punkty końcowe usługi dla tej samej umowy, a oni będą słuchać o adresy URL
net.tcp://YourServer:5151/Services/Service1
i
net.tcp://YourServer:5151/Services/Service2
można mieć mulitple punktów końcowych usługi, ale tylko jeden adres bazowy.
Inną opcją jest określenie żadnych adresów bazowych i podać swój pełny adres usług w końcowym bezpośrednio:
<service name="YourService">
<endpoint name="endpoint1"
address="net.tcp://YourServer:5151/Services/Service1"
binding="netTcpBinding"
contract="IYourService" />
<endpoint name="endpoint2"
address="net.tcp://YourServer:6868/Services/Service2"
binding="netTcpBinding"
contract="IYourService" />
</service>
W tym przypadku, ponieważ jesteś definiowanie cały adres w punkcie końcowym, można wybrać dwa różne porty TCP, po jednym dla każdego punktu końcowego. To powinno działać bez problemu. Masz dwa oddzielne punkty końcowe na dwóch oddzielnych portach, zarówno nasłuchujących, jak i obsługiwanych przez tę samą klasę usług w tle.
Marc
Czytałem gdzieś, że baseAddresses jest ignorowane w enigmencie. – Konstantin
Zgadzam się z Twoim komentarzem i podam link, który tak mówi. Jeśli chodzi o IIS, adresy bazowe są w zasadzie ignorowane, ale powyższy przykład nadal obowiązuje z powodu dostarczania adresów punktów końcowych. Są one niejawnie używane wraz z informacjami o wiązaniu witryny w IIS. http://msdn.microsoft.com/en-us/magazine/cc163412.aspx – dyslexicanaboko