我尝试为亚马逊的Feed创建必要的XML文件,但在创建AmazonEnvelope时遇到错误
XElement _POST_PRODUCT_DATA_ = new XElement(@"AmazonEnvelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance\"" xsi:noNamespaceSchemaLocation=""amzn-envelope.xsd""");
_POST_PRODUCT_DATA_.Save("D:\\_POST_PRODUCT_DATA_.xml");
错误说:
+ $exception {"The ' ' character, hexadecimal value 0x20, cannot be included in a name."} System.Exception {System.Xml.XmlException}
问题是,必须有空间。有人有解决方案吗?
答案 0 :(得分:3)
使用对象模型代替"纯文本中的所有内容"方法
XNamespace ns = "http://www.w3.org/2001/XMLSchema-instance";
var elm = new XElement("AmazonEnvelope",
new XAttribute(XNamespace.Xmlns + "xsi", ns),
new XAttribute(ns + "noNamespaceSchemaLocation", "amzn-envelope.xsd"));