2011-09-19 14 views
11

Wydaje się więc jak mam parę głównych opcji przy wsiadaniu usług WCF kodu proxy do projektu w Visual Studio:Dlaczego warto używać odwołań do usług Visual Studio przez svcutil?

  1. użytkowania Visual Studio wbudowanego oprzyrządowanie dla Service References

  2. użytkowania a proste polecenie svcutil, coś podobnego do svcutil http://[my endpoint] /namespace:[my namespace] /noconfig (ponieważ używam pewnych standardowych powiązań między projektami) i przeciągnij powstały plik do mojego projektu (lub uaktualnienia na miejscu).

Żeby było jasne, opcja 2 jest jak najlepszy, albiet bez wbudowanych narzędzi do aktualizacji. Ale okno dialogowe Service Reference generuje pliki zillion. Czy brakuje mi jakiejś ukrytej korzyści dla Rejestru VS Service, którego mi brakuje?

+3

Są w zasadzie to samo. –

+1

Visual Studio zasadniczo wywołuje svcutil za kulisami. Wielu programistów obawia się jednak otwierania wiersza poleceń i uruchamiania narzędzia wiersza poleceń - dlatego Visual Studio ma okno dialogowe "Dodaj Service Reference" ... –

+0

Tak, wiedziałem, że są takie same pod okładkami, ale za pomocą jakiegoś przełącznika/awesome do generowania wszystkich tych XSD i innych plików do niektórych korzyści? –

Odpowiedz

14

Jeśli jesteś właścicielem również usługę, powiedziałbym nie użyj jednego. Zamiast tego podziel swoje umowy, encje i serwery proxy klientów na różne zestawy, z których można korzystać zarówno w usłudze, jak i kliencie.

Rodzaj podobny do opisanego w WCF The Manual Way... The Right Way.

+0

Całkowicie się zgadzam! –

+0

Słyszałem o tym w wielu miejscach i myślę, że jest to nawet gdzieś w dokumencie iDesign (i być może jest oddzielnym pytaniem), ale czy nie potrzebuję również strategii zarządzania wagą ciężką związaną z pobieraniem i aktualizowaniem tych zespołów? Zrobiłem svn: externals i pomyślałem o NuGet, ale poza łatwą aktualizacją (i svn: externals jest prawie zbyt łatwo wkraść kod do kompilacji nieoczekiwanie), nie jestem pewien, co kupuję poza nieco więcej kodu DRY. –

+1

Jeśli jesteś właścicielem całego kodu, nie powinno to stanowić problemu. Nie musisz odwoływać się do złożeń; możesz odwoływać się do tych samych projektów, które odnoszą się do usług. Za każdym razem, gdy budujesz, twój klient również zostanie zaktualizowany. –

21

Taki sam powód, dla którego budujesz projekt .net z VS i nie wywołuje kompilatora ręcznie z wiersza poleceń. I of IDE oznacza Integrated, robi rzeczy dla ciebie, więc nie musisz robić tych rzeczy ręcznie z wielu oddzielnych miejsc i procedur.

Zwykle jest sposób zrobić wiele z tych rzeczy, ręcznie lub za pomocą edytora tekstu i wiersza polecenia, ale pozwala być produktywny :-)

+2

Uzgodnione w wierszu poleceń narzędzia UI tooling. Czy mówisz, że użyteczność to jedyna korzyść? –

Powiązane problemy