Używając svcutil, możesz tworzyć interfejsy i klasy (kontrakty danych) z WSDL.
svcutil your.wsdl (or svcutil your.wsdl /l:vb if you want Visual Basic)
Spowoduje to utworzenie pliku o nazwie „your.cs” w C # (lub „your.vb” w VB.NET), który zawiera wszystkie niezbędne elementy.
Teraz musisz utworzyć klasę „MyService”, która zaimplementuje interfejs usługi (IServiceInterface) - lub kilka interfejsów usług - i to jest Twoja instancja serwera.
Sama klasa jeszcze nie pomaga - musisz gdzieś hostować usługę. Musisz albo utworzyć własne wystąpienie ServiceHost, które obsługuje usługę, skonfigurować punkty końcowe itd. - lub możesz hostować swoją usługę w usługach IIS.
Istnieją dobre zasoby, jeśli wiesz, czego szukać. Wypróbuj „Najpierw kontrakt” i WCF. lub „WSDL First” i WCF.
Oto wybór:
źródło
ReplyAction="*"
. Wygląda na to, że musisz się tego pozbyć. Istnieje ciąg wyjaśnień z tego komentarza, który daje uzasadnienie, ale go nie czytałem.Użyj svcutil. Exe z
/sc
przełącznikiem, aby wygenerować kontrakty WCF. Spowoduje to utworzenie pliku kodu, który można dodać do projektu. Będzie zawierał wszystkie interfejsy i typy danych potrzebne do utworzenia usługi. Zmień lokalizację wyjściową za pomocą/o
przełącznika lub możesz znaleźć plik w folderze, w którym uruchomiono svcutil.exe. Domyślnym językiem jest C #, ale myślę (nigdy tego nie próbowałem), powinieneś móc to zmienić za pomocą/l:vb
.Jeśli twój WSDL ma jakieś wspierające pliki XSD, przekaż je jako argumenty po WSDL.
Następnie utwórz nową klasę, która jest Twoją usługą, i zaimplementuj właśnie utworzony interfejs kontraktu.
źródło
Możesz użyć svcutil.exe do wygenerowania kodu klienta. Obejmuje to definicję umowy o świadczenie usług oraz wszelkich wymaganych umów dotyczących danych i umów dotyczących błędów.
Następnie po prostu usuń kod klienta: klasy, które implementują kontrakty usług. Będziesz wtedy musiał sam je wdrożyć w swojej służbie.
źródło
Korzystając z narzędzia „Dodaj odwołanie do usługi” w programie Visual Studio, możesz wstawić adres jako:
I załaduje się poprawnie.
źródło