Właśnie uderzyłem w wielką ceglaną ścianę z Paypal. Stworzyłem zwykły projekt C #, aby utworzyć kilka klas opakowujących przy użyciu ich WSDL.
Jeśli tworzysz projekt inny niż internetowy, jedyną opcją dodania wsdl jest odwołanie do usługi sieci Web. A to tworzy taki sam zestaw klas proxy, jak w przypadku referencji WWW, ale nie do końca… dodaje więcej, czego nawet ludzie z PayPal nie są świadomi.
Więc przez cały ten czas szukałem odpowiedniego interfejsu na tej liście klas proxy do użycia jako usługa (SoapBinding), a PayPalAPIAASoapBinding
nie było go, o czym informowałem nasz punkt PayPal w kontakcie.
Widziałem tylko następujące 2 interfejsy, które wydawały mi się tym, czego potrzebowałem, ponieważ nie widziałem takiego, PayPalAPIAASoapBinding
którego MOŻESZ zobaczyć w odwołaniu do usługi opartej na sieci Web:
PayPalAPIAAInterfaceClient
PayPalAPIInterfaceClient
Tak więc doszedłem do wniosku, że prawdopodobnie stworzyłem odniesienie do usługi kontra odniesienie do sieci, które jest opcją w projekcie sieci Web. Ale nie chcę, aby moje odwołanie do usługi było ściśle powiązane z moim projektem sieci Web. Dlatego właśnie stworzyłem projekt C #.
Więc co to jest, do cholery, odwołanie do usługi a co w sieci? I jak mam oddzielić to na inny projekt, jeśli odniesienie do usługi ma rzucić mi pętlę i dać mi zestaw różnych interfejsów niż odniesienie do sieci Web?
Ponadto, aby jeszcze bardziej zagmatwać, VS 2008 ma projekt aplikacji usługi sieci Web.
Więc czego używam? Używamy .NET 3.5 Framework i jesteśmy nie gotowy, aby przejść do WCF . Czy mogę więc nadal używać nowego odwołania do usługi, nawet jeśli nie korzystam z WCF, czy co? Jeśli używasz platformy .NET 3.5, a nie programu WCF, i nadal chcesz korzystać z podstawowych usług sieci Web, czy nadal korzystasz z trasy odwołania do usługi i po prostu nie używasz struktury WCF? Czy to znaczy, czy może być nadal używany jako odwołanie do sieci .NET 2.0, tylko że otrzymasz całkowicie inną generację WSDL?