通过存储过程插入XML数据时出错
本文关键字:数据 出错 XML 插入 存储过程 | 更新日期: 2023-09-27 18:22:08
在SQLServer2005中,我有一个表的列数据类型为xml
。我创建了一个存储过程来将值插入该列。
但是当从C#中的代码调用SP时,它会给我一个错误
未能将参数值从XDocument转换为String。
有人能帮忙吗?
这是我创建的存储过程:
Create Procedure [dbo].[TestReportRepository_Save]
@ReportExecutionTime datetime,
@ReportFile xml,
as
begin
insert into TestReportRepository(ReportExecutionTime,ReportFile) values(@ReportExecutionTime,@ReportFile)
end
C#代码是
DbParameter dbParam1 = dac.Parameter("@ReportExecutionTime", ReportExecutionTime, DbType.DateTime, ParameterDirection.Input);
DbParameter dbParam2 = dac.Parameter("@ReportFile", xmlDoc.Document, DbType.Xml, ParameterDirection.Input);
DbParameter[] dbParamColl = new DbParameter[] { dbParam1, dbParam2 };
long reportID = dac.Save("TestReportRepository_save", dbParamColl);
请帮我找出我做错了什么。
传递此参数时,不要传递XDocument对象,而是传递其字符串表示。
对于XmlDocument,它是XmlDocument.OuterXml,为XDocument找到一个,并将其传递给