SORU
8 Kasım 2009, Pazar


Vs üreten proxy XML ChannelFactory

Sadece şartlar sadece arama ChannelFactory kullanarak çağırabilirsiniz zaman XML servisinden bir proxy oluşturmak için tercih ne olurdu? altında merak ediyorum

Bir proxy oluşturmak ve sunucu güncelleştirilmiş bir proxy yenileyici hakkında endişelenmenize gerek yok bu şekilde?

Teşekkürler

CEVAP
6 NİSAN 2010, Salı


XML istemci oluşturmak için 3 temel yolu vardır:

  1. Visual Studio proxy oluşturmasına izin. Bu otomatik WSDL okuyarak servisine bağlanan bir kod oluşturur. Eğer bu hizmeti herhangi bir nedenle değişirse, yeniden oluşturmak zorunda. Bu büyük avantajı ayarlamak kolay olmasıdır - VS bir sihirbaz vardır ve her şey otomatik. Dezavantajı VS sizin için tüm zor işleri yapmak için güvenmek zorunda olduğunuzu, ve kontrolü kaybedersin.

  2. Bilinen bir arayüzü ChannelFactory kullanın. Bu hizmetin (hizmet sözleşmesi) açıklayan yerel arabirimleri sahip dayanır. Büyük avantajı bu değişim çok daha kolay yönetebilirsiniz - hala ve değişiklikleri yeniden düzeltmek zorunda, ama şimdi kod yenileyici değilsin, yeni arayüzleri sağlamaya çalışıyorsun. Genellikle bu hem çok daha kolay birim testi için alay olarak hem sunucu hem de istemci kontrol kullanılır. Ancak arabirimleri herhangi bir hizmet için yazılmış olabilir, hatta olanları DİNLENME - this Twitter API bir göz atın.

  3. Kendi proxy - bu oldukça yapmak kolaydır, özellikle DİNLENME hizmetleri için HttpClient WebClient kullanarak yazma. Bu, en ince taneli kontrol sağlar, ama hizmet çok mal API dizeleri. Örneğin: var content = new HttpClient().Get("http://yoursite.com/resource/id").Content; - Eğer API ayrıntılarını değiştirme zamanı kadar bir hata ile karşılaşmıyorsunuz.

Şahsen hiç seçenek 1 - otomatik üretilen kod dağınık güvenerek sevdim ve çok kontrolünü kaybeder. Genellikle serialisation sorunlar yaratır artı - tided olan iki özdeş sınıfları (sunucu kodu, otomatik olarak oluşturulan) ile sonuna kadar giderim ama bir acı.

Seçenek 2 mükemmel olmalı, ama Kanallar mesela onlar completely lose the content of HTTP errors çok sınırlayıcı. Bu hizmeti açıklayan arabirimleri sahip olmak çok daha kolay olan kod ve korumak olduğunu söyledi.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • footiecyclo

    footiecyclo

    26 EYLÜL 2009
  • RocketJump

    RocketJump

    22 ŞUBAT 2006
  • TheFlashCentre

    TheFlashCent

    22 Mayıs 2008