2010-05-27 25 views
9

Im cố gắng để tạo ra một xml nên trông như thế nàyLàm thế nào để thêm xmlnamespace để một XmlDocument

<?xml version="1.0" encoding="iso-8859-1"?> 
<MyTestSet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
    <Tests> 
    <Test> 
     <messaure>1</messaure> 
     <height>4</height> 
    </Test> 
    <Test> 
     <messaure>4</messaure> 
     <height>53</height> 
    </Test> 
    </Tests> 
</MyTestSet> 

của nó không phải là một vấn đề để tạo ra các thử nghiệm hoặc các yếu tố thử nghiệm, nhưng cách tốt nhất để tạo sự "là những gì MyTestSet "bao gồm các không gian tên? Im sử dụng C# XMLDocument

Trả lời

20

này làm việc cho tôi:

XmlDocument.DocumentElement.SetAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance"); 
XmlDocument.DocumentElement.SetAttribute("xmlns:xsd", "http://www.w3.org/2001/XMLSchema"); 

Nếu bạn muốn tạo toàn bộ tài liệu bạn đã đăng, bạn có thể không muốn quên khai báo XML:

 XmlDeclaration xml_declaration; 
     xml_declaration = XmlDocument.CreateXmlDeclaration("1.0", "ISO-8859-1", "yes"); 

     XmlElement document_element = XmlDocument.DocumentElement; 
     XmlDocument.InsertBefore(xml_declaration, document_element); 

Trong một số trường hợp, bạn có thể cần đến nó.

+1

Hoạt động hoàn hảo .... –

0

Bạn không cần các không gian tên xsd và xsi vì bạn không sử dụng chúng. Bất kỳ đoạn mã nào yêu cầu chúng phải ở đó bị hỏng nặng và phải được sửa chữa hoặc bị chế nhạo công khai.

+0

Tại sao bạn nên downvote? –

+7

Được hạ cấp cá nhân vì điều này không mang tính xây dựng và không trả lời câu hỏi. Câu hỏi là "làm thế nào tôi có thể làm điều này," và không "tôi nên làm điều này." – shortstuffsushi

Các vấn đề liên quan