XML片段中不允许DTD - xml到sql中

时间:2013-05-12 15:08:40

标签: asp.net sql sql-server xml stored-procedures

我正在尝试使用存储过程将XML保存到数据库中,而在asp.net中我正在使用...

cmd.Parameters.Add("@input", SqlDbType.Xml).Value = new System.Data.SqlTypes.SqlXml(new XmlTextReader(returnXML.InnerXml, XmlNodeType.Document, null));

,这会返回错误

  

XML片段中不允许使用DTD

任何人都建议,谢谢。

1 个答案:

答案 0 :(得分:3)

已修复 - '在分配给XML变量之前删除doctype声明' - Mikael Eriksson

XmlDocumentType XDType = returnXML.DocumentType;
returnXML.RemoveChild(XDType);
Data.SqlTypes.SqlXml(new XmlTextReader(returnXML.InnerXml, XmlNodeType.Document, null));