2011-10-04 7 views
8

मुझे वेब सेवा का उपयोग करते समय निम्न त्रुटि मिल रही है: सिस्टम के 'XXX' प्रकार को क्रमबद्ध नहीं कर सकता System.Nullable`1 [System.Decimal]। जटिल प्रकार को एन्कोड करने के लिए XmlAttribute/XmlText का उपयोग नहीं किया जा सकता है।सिस्टम 'XXX' प्रकार के सिस्टम को क्रमबद्ध नहीं कर सकता। Nullable`1 [System.Decimal]। XmlAttribute/XmlText का उपयोग जटिल प्रकारों को एन्कोड करने के लिए नहीं किया जा सकता

मैं त्रुटि को समझते हैं और इस ब्लॉग पर एक समाधान पाया: http://www.jamesewelch.com/2009/02/03/how-to-serialize-subsonic-objects-with-nullable-properties/#more-827

मैं, समाधान 2 उपयोग करने के लिए के रूप में आप ब्लॉग मैं बहुत किस्मत होने नहीं कर रहा हूँ पर मेरी टिप्पणी से देखेंगे चाहते हैं। मैं डेटा वापस लाने के लिए एक ExcuteTypeList का उपयोग कर रहा हूँ।

कोई भी पॉइंटर्स या सहायता बहुत अच्छी होगी।

धन्यवाद

+0

यदि मुझे गलत नहीं है, तो आपका शीर्षक आपकी मूल समस्या को संबोधित करता है, लेकिन प्रश्न एक पूरी तरह से अलग समस्या के बारे में है जिसे आप पूर्व को सही करने की कोशिश करने के परिणामस्वरूप नहीं सामना कर रहे हैं; 'कंधेरियलएक्स' तंत्र के साथ आपके पास क्या समस्या है? –

+0

मुझे अभी भी त्रुटि मिल रही है जब भी मुझे चाहिए। यदि आप ब्लॉग पर मेरी टिप्पणियां देख सकते हैं तो मुझे लगता है कि मैंने जो पूछा था उसका पालन किया है लेकिन अभी भी त्रुटि है – Boomerang

उत्तर

11

आप [XmlAttribute] को हटाने और XXX क्षेत्र के लिए [XmlElement] लागू करने के लिए की जरूरत है।

[XmlElement(IsNullable = true)] public decimal? XXX; 

public bool ShouldSerializeXXX() 
{ 
    return XXX.HasValue; 
}