NASıL YAPıLıR: WSDL.exe ile oluşturulmuş, proxy sınıf olarak kullanılan türleri Değiştir

Makale çevirileri Makale çevirileri
Makale numarası: 326790 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Bu Sayfada

Özet

Web Hizmetleri Açıklama Dili (WSDL.exe) aracı, XML Web Hizmetleri için proxy kodu oluşturur. Proxy sınıf içinde kullanılan türleri oluşturulan XML Web hizmetini tanımlayan WSDL belgenin içeriğine temel alır. Bununla birlikte, oluşturulan türleri istediğinizi ve ne beklediğiniz olmayabilir.

WSDL.exe türü hizmet açıklamasında belirtilen nesne için kullanılacak en iyi oluşturulan belirler. Bazı durumlarda, araç, bir çevrim nesneler için en yaygın payda olan bir yaklaşım kullanır. Örneğin, bir ArrayList parametresinde bir WebMethod WSDL bir XML şeması olarak açıklanan (XSD) sırası. WSDL.exe hizmet açıklaması, WSDL.exe bu dizi açıklama bulur sonra nesne dizi kullanan bir proxy sınıf oluşturur. WebMethod'de kullanılan özgün türü, bir ArrayList, çalışmak isteyebilirsiniz. Oluşturulan türlerini kullanmak istiyorsanız, daha uygun türü için oluşturulan türleri de değiştirebilirsiniz. Uygun nesne türünü almak için <a0></a0>, oluşturulan proxy sınıfını içeren dosyayı açabilir el ile oluşturulan bir yöntem parametre değiştirmek ve sonra uygun nesne türleri için dönüş türü.

Proxy kodu üret

Aşağıdaki örnekte, XML Web hizmeti, Web hizmeti olan aşağıdaki prototip yöntemiyle:
string DummyMethod(System.Collections.ArrayList intList)
				
WSDL.exe proxy kaynak dosyası oluşturmak için kullanabilirsiniz.

Kodu el ile olarak değiştir

  1. Proxy kaynak dosyayı bir metin düzenleyicisinde açın.
  2. Iki yöntem bulun:
            public string DummyMethod(object[] intList) {
                object[] results = this.Invoke("DummyMethod", new object[] {
                            intList});
                return ((string)(results[0]));
            }
    
            public System.IAsyncResult BeginDummyMethod(object[] intList, System.AsyncCallback callback, object asyncState) {
                return this.BeginInvoke("DummyMethod", new object[] {
                            intList}, callback, asyncState);
            }
    					
  3. Kodla değiştirin:
            public string DummyMethod(System.Collections.ArrayList intList) {
                object[] results = this.Invoke("DummyMethod", new object[] {
                            intList});
                return ((string)(results[0]));
            }
    
            public System.IAsyncResult BeginDummyMethod(System.Collections.ArrayList intList, System.AsyncCallback callback, object asyncState) {
                return this.BeginInvoke("DummyMethod", new object[] {
                            intList}, callback, asyncState);
            }
    					

Ek bilgi

XML Web Hizmetleri XML nesneleri seri hale getirilmeye ve sonra yeniden nesneleri için XML serisi kaldırılamadı. Genellikle, belirli bir tipe yönelik bir nesne seri hale getirilmiş ve olması sonra aynı türdeki başka bir nesneye serisi. Farklı türleri kullanıyorsanız, ancak bu çalışmayabilir.



Referanslar

Ne tür seri hale getirilmiş serisi ve hakkında daha fazla bilgi için aşağıdaki Microsoft Web sitesini ziyaret edin:
XML ve SOAP seri hale getirme
http://msdn.microsoft.com/library/?url=/library/en-us/cpguide/html/cpconserialization.asp?frame=true


Özellikler

Makale numarası: 326790 - Last Review: 28 Nisan 2003 Pazartesi - Gözden geçirme: 4.1
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Web Services (included with the .NET Framework) 1.0
  • Microsoft Web Services Enhancements for Microsoft .NET 1.1
Anahtar Kelimeler: 
kbmt kbhowtomaster KB326790 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:326790
Kullanım Dışı Bilgi Bankası İçeriği Yasal Uyarı
Bu makale, Microsoft'un artık destek sağlamadığı ürünler ile ilgili olarak yazılmıştır. Bu nedenle, bu makale "olduğu gibi" sağlanmıştır ve bundan sonra güncelleştirilmeyecektir.

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com