c# – 尝试将XML内容存储到SQL Server 2005中失败(编码问题)

c# – 尝试将XML内容存储到SQL Server 2005中失败(编码问题),第1张

概述伙计们, 我有一个webservice返回ISO-8859-1编码的数据 – 因为它不是我的,我不能改变:-( 为了审计目的,我想将这些调用的结果XML存储到SQL Server 2005表中,其中有一个类型为“XML NULL”的字段. 从我的C#代码,我尝试使用参数化查询,将这个XML内容存储到XML字段中 SqlCommand _cmd = new SqlCommand("INSERT IN 伙计们,

我有一个webservice返回ISO-8859-1编码的数据 – 因为它不是我的,我不能改变:-(

为了审计目的,我想将这些调用的结果XML存储到sql Server 2005表中,其中有一个类型为“XML NulL”的字段.

从我的C#代码,我尝试使用参数化查询,将这个XML内容存储到XML字段中

sqlCommand _cmd = new sqlCommand("INSERT INTO dbo.Audittable(XmlFIEld) VALUES(@XmlContents)",_connection);_cmd.Parameters.Add("@XmlContents",sqlDbType.Xml);_cmd.Parameters["@XmlContents"].Value = (my XML response);_cmd.ExecuteNonquery();

麻烦是 – 当我运行这个代码,我得到一个错误:

Msg 9402,Level 16,State 1,line 1
XML parsing: line 1,character xy,unable to switch the enCoding

??我试图弄清楚在哪里和如何可能“切换”编码 – 到目前为止没有运气.这是什么意思?在sql Server 2005中我不能使用ISO-8859-1编码存储XML?还是有一个诀窍呢?)告诉sql Server 2005只是接受这个编码,或者b)在存储在sql Server之前,将webservice响应自动转换成UTF编码?

感谢任何提示,指针,提示!
渣子

解决方法 You need to convert to utf-16

即使我使用sql Server,我也不是sql Server的专家,但是我们去年遇到了同样的问题,并且与发送的xml相比,在sql中声明的字符串数据类型是错误的.

总结

以上是内存溢出为你收集整理的c# – 尝试将XML内容存储到SQL Server 2005中失败(编码问题)全部内容,希望文章能够帮你解决c# – 尝试将XML内容存储到SQL Server 2005中失败(编码问题)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1257550.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存