我想将任意XML插入SQL Server.XML包含在一个XmlDocument对象中.
我要插入的列要么nvarchar,ntext或xml列(如果它使你的生活更轻松,那么你可以选择哪个类型,它真的是一个xml列.)
void SaveXmlToDatabase(DbConnection connection,
XmlDocument xmlToSave,
String tableName, String columnName);
{
}
Run Code Online (Sandbox Code Playgroud)
我问的原因是因为我试图找到正确的方法来转换XmlDocument成数据库可以采取的东西 - 确保编码正确:
<?xml version="1.0" encoding="windows-1252"?>元素我知道ntext,nvarchar或者xml存储UTF-16在SQL Server内部.所以我必须确保将数据作为UTF-16提供给SQL Server.这对于String.NET中的s 来说不是问题,因为它们是 unicode UTF-16.
第二个问题,即同步编码属性,是一个难以破解的难题.我必须弄清楚如何通过XmlDocument对象找到声明元素:
<?xml version="1.0" encoding="windows-1252"?> (or whatever the encoding may be)
Run Code Online (Sandbox Code Playgroud)
并将其调整为UTF-16
<?xml version="1.0" encoding="UTF-16"?>
Run Code Online (Sandbox Code Playgroud)
忽略XML声明中的编码,并弄清楚如何将任何内容保存到SQL Server中:
void SaveXmlToDatabase(DbConnection connection,
XmlDocument xmlToSave,
String tableName, String …Run Code Online (Sandbox Code Playgroud)