2009-08-22 9 views
7

में xname का उपयोग करके मैं अपनी साइट पर आरएसएस फ़ीड (पार्स) की सूची से ओपल फ़ाइल बनाने के लिए कुछ कोड लिख रहा हूं। उपयोगकर्ता मेरी साइट पर आरएसएस फ़ीड के डेटाग्रिड से चेकबॉक्स का चयन करेगा, और बटन दबाते समय भारी भारोत्तोलन होगा।लिंक-टू-एक्सएमएल

वैसे भी, मैं इस तरह कोड है:

 foreach (var v in list) 
    { 
     XName xname; 

     doc.Element("channel").Add(
      new XElement("title", v.Name), 
      new XElement("description", "First Article Description"), 
      new XElement("pubDate", DateTime.Now.ToUniversalTime()), 
      new XElement("guid", Guid.NewGuid())); 

    } 

सूची फ़ीड वस्तुओं का संग्रह (जैसे Hanselman आरएसएस फ़ीड, codinghorror आरएसएस फ़ीड, आदि) है। डेटाग्रिड में एक चेकबॉक्स होगा और इस ग्रिड के नीचे बटन दबाएगा, उपरोक्त कोड निष्पादित होगा (मुझे एक्सएमएल घोषणाओं के लिए कोड भी मिला है)।

जब मैं एलिमेंट (...) विधि का उपयोग करता हूं, तो मुझे XName प्रदान करने की आवश्यकता होती है। इसमें एक आंतरिक कन्स्ट्रक्टर है जिसका मैं उपयोग नहीं कर सकता। मैं इस पैरामीटर को कैसे पास कर सकता हूं?

उत्तर

11

एक्सनेम पर एक स्थिर विधि है जिसे गेट कहा जाता है जो आपको XName बनाने की अनुमति देता है। हालांकि, वहाँ भी XName को स्ट्रिंग से एक अंतर्निहित डाली है, इसलिए यदि आप सिर्फ एक स्ट्रिंग दर्ज है, यह XName को बातचीत और समस्याओं

2

बिना काम एक XNamespace वस्तु बना सकते हैं और इसके अलावा ऑपरेटर का उपयोग करने के लिए सक्षम होना चाहिए:

XName name = (XNamespace)"http://schemas.xyz.com/namespaceUri" + "tagName"; 
15

तुम भी घुंघराले ब्रेसिज़ में एक नाम स्थान संलग्न कर सकते हैं:

XName name = "{http://schemas.xyz.com/namespaceUri}tagName";