xmlnode = xmldoc.CreateElement(dRow.ItemArray.GetValue(0).ToString());
xmlroot.AppendChild(xmlnode);
xmlnode.InnerText = sub;
4
A
回答
1
標題是您的答案。你不能在名字中使用'='。
4
看看dRow.ItemArray.GetValue(0).ToString()
的值。這聽起來像它不是一個有效的元素名稱,由於包含=
符號。
創建一個名稱從數據動態給出的元素相對較少。以這種方式指定元素的內容更爲常見。
你究竟想達到什麼目的?你的行中有什麼?
5
您可以使用:
string name = XmlConvert.EncodeName(dRow.ItemArray.GetValue(0).ToString());
獲得安全編碼的名稱,然後
xmlnode = xmldoc.CreateElement(name);
然而,正如喬恩所指出的那樣,這非常不尋常 - 而且編碼名稱並不美觀;例如a=b
變爲a_x003D_b
。
1
當您嘗試將Microsoft目錄導出爲XML時,生成的文件無法導入,並且您收到以下錯誤消息 「XML文件路徑/文件名在行中包含錯誤。」「名稱包含無效字符。」 如果使用Microsoft Visual Studio .NET驗證XML目錄,則會收到以下錯誤消息: 「The'('character,hexadecimal value 0x28,can not begin a name。Line#,Position#」 發生此問題是因爲Commerce Server導出不編碼以下特殊字符:
The range 0x0021 – 0x002F includes ! 「 # $ % & ‘ () * + , - ./
The range 0x03A – 0x0040 includes : ; <=> ? @
The range 0x007B – 0x007E includes { | } ~
The range 0x005B – 0x005E [ \ ] ^**
相關問題
- 1. '。'字符十六進制值0x00不能包含在名稱中
- 2. ';'字符,十六進制值0x3B,不能包含在名稱中
- 3. 在「:」字符,十六進制值0x3A,不能包含在$名稱
- 4. XmlException爲'/'字符十六進制值0x2F不能包含在名稱
- 5. 的XmlWriter的「:」字符,十六進制值0x3A,不能包含在$名稱
- 6. 在 ':' 字符,十六進制值0x3A,不能包含在屬性名
- 7. 名稱不能以「3」字,十六進制值0x33開始
- 8. 插入/替換散列值:「十六進制字符串包含非十六進制字符」
- 9. 如何將包含十六進制值的字符串轉換爲PHP中的十六進制值?
- 10. 轉換十六進制字符串十六進制值
- 11. python字符串與十六進制轉義十六進制值
- 12. 在C++中將十六進制十六進制字符標記爲十進制
- 13. 字符串顏色名稱字符串顏色C#中的十六進制值
- 14. 如何在十六進制字符數組中插入十六進制值
- 15. 在字符數組中包含字符的十進制等值
- 16. 使用十六進制元字符進行RegExp名稱驗證
- 17. 如何使用sprintf在字符串中包含十六進制值
- 18. 如何在Perl中將包含十六進制的字符串轉換爲十六進制?
- 19. 的LINQ to XML:異常-The'字符,十六進制0x20值,不能包括在名稱
- 20. 爲十六進制值轉換爲十六進制字符串在Perl
- 21. 從十六進制字符
- 22. 十六進制字符?
- 23. 十六進制字符
- 24. 從包含十六進制和十進制值的字符串中輸出數字
- 25. 字符串到十六進制值
- 26. 指定十六進制值爲字符
- 27. 十六進制值的字符串格式爲十六進制數字排序
- 28. 十六進制字符到實際十六進制字符的字符串
- 29. 使用十六進制值操作時不能使用十六進制功能
- 30. 翻譯包含二進制值,以十六進制