Mam dwa osobne interfejsy i dwa osobnepunkty końcowe (pliki .svc) zdefiniowane w pojedynczym projekcie WCF. Te interfejsy mają wspólne obiekty w projekcie. Czy istnieje sposób utworzenia pojedynczego serwera proxy, który łączy zarówno interfejsy, jak i wszystkie obiekty, ponieważ są one wspólne?
Dzięki!
Odpowiedzi:
2 dla odpowiedzi № 1Możesz wdrożyć wiele interfejsów w jednej usłudze:
public class MyService : IContract1, IContract2
{
}
Następnie możesz mieć proxy dla tej usługi, która korzysta z obu umów.
1 dla odpowiedzi nr 2
Szukając tutaj, znalazłem inny wątek (zgubiłem adres URL), który sugerował użycie następującej składni svc:
svcutil.exe /ct:System.Collections.Generic.List`1 / ser: Auto / tcv: Version35 / n: *, MyNamespace http://localhost/MyService/Services/Service1.svc?wsdl http://localhost/MyService/Services/Service2.svc?wsdl http://localhost/MyService/Services/Service3.svc?wsdl
W ten sposób udało mi się stworzyć pojedyncze proxy, które miało trzy interfejsy i trzy klasy klientów, ale wszystkie obiekty, które były wspólne w implementacji pojawiły się tylko raz.