SQL Server varbinary 字节解码不一致

问题描述

我们有一个 varbinary 字段存储一些 XML 数据

一个过程将该字段返回给 C# 调用代码,该代码对字节数组进行解码

Encoding.UTF8.GetString((byte[])rdr.GetValue(1))

我不认为这是正确解码字节数组,我不知道为什么。

如果我复制 varbinary 并手动转换它,它不会正确解码:

select convert(varchar(max),0x3C4150495061796D656E7473526......)

Ä•–ÖVçG5&WVW7CàТĆVFW#àТÅ5fW#ã"ããÂõ5fW#àТÄ6Æ–VçCå

如果我只是简单地转换了 proc 中的列

select convert(varchar(max),filedata),filedata from TABLE

它解码为有效的 XML。

很遗憾,我无法包含实际数据。这种行为是最近发生的,并不一致。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)