2010-02-22 27 views
20

tôi đang cố gắng để đọc phần sau đây và chọn một nút trong nóNamespace Manager hoặc XsltContext cần

<ns1:OrderInfo xmlns:ns1="http://xxxxxx Some URL XXXX"> 
    <pricing someAttrHere> 
     <childnodes> 
    </pricing> 
</ns1:OrderInfo> 

.

XmlDocument document = new XmlDocument(); 
document.Load(Server.MapPath("order.xml")); 

XmlNamespaceManager manager = new XmlNamespaceManager(document.NameTable); 
manager.AddNamespace("ns1", "http://xxxxxx Some URL XXXX"); 
query = "/ns1:OrderInfo/pricing"; 
XmlNodeList nodeList = document.SelectNodes(query); 

nhưng nó luôn luôn cung cấp cho "Namespace Manager hoặc XsltContext cần thiết"

như bạn có thể xem ở trên tôi thêm namespace sử dụng XmlNamespaceManager và vẫn cung cấp cho các lỗi vui lòng bất cứ sự giúp đỡ

Trả lời

34

Bạn cần phải sử dụng XmlNamespaceManager của bạn:

XmlNodeList nodeList = document.SelectNodes(query, manager); 
+0

quá điên !! đẹp nhất !!! –

+0

Oh người đàn ông ... Làm thế nào tôi bỏ lỡ điều đó? Ồ, tôi biết làm thế nào. Thông báo lỗi của Microsoft thực sự suxors. – Brain2000

+0

Tôi biết rằng đây là câu trả lời cũ, nhưng bạn đã cứu ngày của tôi, cảm ơn! –