我正在尝试从串行设备传递包含在xml中的数据,并且该数据必须保留所有原始字符。
我对CDATA的理解是它可能包含非法字符,因为它没有被xml解析器解析,但是当在asp.net中使用XCData类时,它会抛出非法字符异常。这是代码。
return new XElement("ac",
new XAttribute("name", name),
new XAttribute("id", id),
new XElement("interface_id", interface_id),
new XElement("event_type", event_type),
new XElement("interface_type", interface_type),
new XElement("data", new XCData(data))
).ToString();
如果我删除添加XCData的行,代码运行正常,所以我知道非法字符在数据变量中。
这是我得到的例外
An unhandled exception of type 'System.ArgumentException' occurred in System.Xml.dll
Additional information: '.', hexadecimal value 0x00, is an invalid character.
所以我想问题是,我错了CDATA,如果是这样,是否可以通过xml保持数据完整性?
答案 0 :(得分:0)