如何将xml文件保存到xml列
本文关键字:xml 保存 文件 | 更新日期: 2023-09-27 18:13:39
我有一个xml文件,我想把它的内容保存到数据库中再次读取。
我使用XmlDocument
加载xml文件,并使用InnerXml
保存此xml。
这是我的代码
cmd.CommandText = @"INSERT INTO pages(BPMNID,XML) VALUES (@BPMNID,@XML)";
cmd.Parameters.AddWithValue("@BPMNID",2);
cmd.Parameters.AddWithValue("@XML", XDoc.InnerXml);
cmd.Connection = conn;
conn.Open();
try
{
cmd.ExecuteNonQuery();
}
当运行前面的代码时,我得到一个异常
XML解析:无法切换编码
提示:Xml列是xml
列
尝试使用如下代码:
public void SaveXml(int id, string xmlFileName)
{
// read your XML
string xmlContent = File.ReadAllText(xmlFileName);
// set up query
string insertQuery = "INSERT INTO pages(BPMNID, XML) VALUES (@BPMNID, @XML)";
using (SqlConnection conn = new SqlConnection(-your-connection-string-here-))
using (SqlCommand cmd = new SqlCommand(insertQuery, conn))
{
// define parameters
cmd.Parameters.Add("@BPMNID", SqlDbType.Int).Value = id;
cmd.Parameters.Add("@XML", SqlDbType.VarChar, -1).Value = xmlContent;
// open connection, execute query, close connection
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
}