1
4

2 回答 2

1

您的 C# 代码和 SQL 代码都在计算相同的哈希值,但是当您的 C# 代码尝试将哈希值的字节直接转换为 ASCII 字符(它们不是)时,SQL 将结果格式化为十六进制字符串。要在 C# 中获得相同的结果,您可以使用 BitConverter 类:

var shashed = "0x" + System.BitConverter.ToString(hashed).Replace("-", "");

输出:

0x21232F297A57A5A743894A0E4A801FC3
于 2013-07-23T19:29:51.230 回答
0

您是否根据字符集表检查了结果?

在大多数字符集中,0x21 是 !,0x23 是 #,等等。

于 2013-07-23T19:23:19.390 回答