2012-12-13 16 views
7

से नेमस्पेस को कैसे हटाएं कृपया वेब एपीआई प्रतिक्रिया से xmlns नेमस्पेस को निकालने में मेरी सहायता करें।वेब एपीआई प्रतिक्रिया

जोड़ना,

config.Formatters.XmlFormatter.UseXmlSerializer = true; 

(या)

[DataContract(Namespace="")] 

मेरी मदद नहीं की। आपका सहयोग सराहनीय है।

+0

अपने समाधान को उत्तर के रूप में पोस्ट करें। सवाल में नहीं। – arulmr

+0

धन्यवाद arulmr। कृपया मेरी पोस्ट संपादित करना जारी रखें। यह बहुत उपयोगी होगा। –

उत्तर

8

अंत में, मुझे समाधान मिला। मूल तत्व से नामस्थान को हटाने के लिए बस एक कस्टम एक्सएमएलफॉर्मेटर बनाया।

public class IgnoreNamespacesXmlMediaTypeFormatter : XmlMediaTypeFormatter 
{ 
public override Task WriteToStreamAsync(Type type, object value, Stream writeStream, HttpContent content, TransportContext transportContext) 
{ 
    try 
    { 
     var task = Task.Factory.StartNew(() => 
     { 
      var xns = new XmlSerializerNamespaces(); 
      var serializer = new XmlSerializer(type); 
      xns.Add(string.Empty, string.Empty); 
      serializer.Serialize(writeStream, value, xns); 
     }); 

     return task; 
    } 
    catch (Exception) 
    { 
     return base.WriteToStreamAsync(type, value, writeStream, content, transportContext); 
    } 
    } 
} 
संबंधित मुद्दे