2010-12-09 18 views
12

Belirli bir web hizmeti yöntemini çağırmaya çalıştığımda "Unspecified error" alıyorum. XMLSpy kullanarak parametre nesnesinin serileştirilmediğini keşfettim.XML Serileştirme: nesne serileştirilmemiş

if (!needType) { 
    System.Type t = o.GetType(); 
    if (t == typeof(global::moonraker1.Conference)) { 
    } 
    else { 
    throw CreateUnknownTypeException(o); 
    } 
} 

Ancak wsdl ithalat moonraker1.BookingService denilen bir birim oluşturulmuş, bu yüzden parametre nesnenin türü aslında moonraker1.BookingService.Conference geçerli: oluşturulan seri hale getirici kaynağında

Ben satırları not edin. İletinin neden hala web hizmetine aktarıldığını anlayamasam da, nesnenin serileştirilmemesinin nedeni tamamen mümkün görünüyor.

Lütfen bu konuda herhangi bir ışık tutabilir mi? Yoksa tamamen yanlış yolda mıyım?

+0

.. ben özel bir kurucu yazılı ve sonrasında bir varsayılan kurucu yazmayı unuttum sırf çoğu zaman bunun olmasıdır? – Sam

+3

Bu kod Delphi değil, bu soru doğru olarak etiketlendi mi? –

+0

Parametre nesnesi wsdl'de isteğe bağlı olarak işaretlenmiş mi? Eğer öyleyse, serialize etmek için 'ParameterSpecified' alanını true olarak ayarlamanız gerekir. – Ryan

cevap

1

Şimdi bunun olup olmadığından emin değilim, ancak bazı .NET kodlarına benziyor. Belki de cevabınız, sizin türünüzde bir varsayılan kurucu olması gerektiği kadar basittir.

NET'te serileştirme Kendi deneyim kullandığınız Delphi hangi sürümünü

İlgili konular