2010-03-11 8 views
24
[DataMember] 
    public int? NumberOfPages; //////////// Is this supported???? 
    [DataMember] 
    public bool? Color;   //////////// Is this supported???? 
    [DataMember] 
    public int? BulkQuantity; 
    [DataMember] 

उत्तर

31

हां, ज़ाहिर है!

आपको निरर्थक डेटा सदस्यों को बनाने में कोई परेशानी नहीं होनी चाहिए, परिणामस्वरूप डब्ल्यूएसडीएल/एक्सएसडी में "xs: nillable = true" सदस्यों के रूप में उन्हें संभाला जाएगा। बिल्कुल भी परेशानी नहीं है।

+0

लेकिन जब मैं ऐसा कर रहा हूं और डब्ल्यूसीएफ टेस्ट क्लाइंट का उपयोग करके इसका परीक्षण कर रहा हूं, तो यह कहता है कि "यह ऑपरेशन डब्ल्यूसीएफ टेस्ट क्लाइंट द्वारा समर्थित नहीं है"। – Pinu

+0

शायद यह केवल डब्ल्यूसीएफ परीक्षण क्लाइंट है जो इसे संभाल नहीं सकता है! एक ही फ़ंक्शन को कॉल करने के लिए अपना खुद का छोटा क्लाइंट लिखने का प्रयास करें और उस जानकारी को वापस प्राप्त करें। –

+0

marc_s सही है; वेब पेज आपको ब्राउज़र के भीतर से किसी सेवा की जांच करने देता है केवल पैरामीटर के रूप में आदिम डेटा प्रकारों का समर्थन करता है। यह सेवा की कार्यक्षमता को नुकसान नहीं पहुंचाता है। यदि आप अपना खुद का टूल नहीं लिखना चाहते हैं, तो एमएस डब्ल्यूसीएफ टेस्ट क्लाइंट (http://msdn.microsoft.com/en-us/library/bb552364.aspx) – GreenIcicle

1

आमतौर पर यह काम करता है, लेकिन यदि आप नामुमकिन सदस्य रखने वाले वर्ग सामान्य हैं तो आप मुद्दों में भाग सकते हैं। http://discoveringdotnet.alexeyev.org/2009/06/wcf-nullable-values-are-not-working-in.html

+0

आज़माएं मैंने सुबह सुबह अपने सिर को टक्कर लगी है यह सीमा कामकाज पर कोई विचार? – batwad

4

@Kahoon और Batwad:: किसी भी मुझे के रूप में ही समस्या का सामना किया है

  1. वर्ग में:

    हम दो चरणों में nullable<> या ? प्रकार का उपयोग करके इस समस्या का समाधान

    nullable<GenType> MyField {get; set;} 
    
  2. का उपयोग डेटा अनुबंध में: इस प्रकार सामान्य क्षेत्र से युक्त, फ़ील्ड निर्धारित यह बेसक्लास है, आप परिभाषित कर सकते हैं कि कुछ एनोटेशन-जैसे टैग का उपयोग करके धारावाहिक/deserializer के लिए कौन से तत्व ज्ञात हैं। यहाँ, हम उदाहरण के लिए परिभाषित किया गया:

    [Serializable] 
    [DataContract] 
    [KnownType(typeof(BaseClass<nullable<DateTime>>))] 
    

    के बजाय BaseClass<nullable<DateTime>> आप BaseClass<DateTime?> उपयोग कर सकते हैं, मुझे लगता है।

इसके बाद, सामान्य शून्य मूल्यों का क्रमबद्धता हमारे लिए काम करती है।

संबंधित मुद्दे