是否有.Net 1.1兼容的String.GetHashCode在.Net 2.0代码中实现?

时间:2009-12-29 22:45:19

标签: .net-2.0 .net-1.1 gethashcode

我有一个现有的应用程序,我错误地使用String.GetHashCode并将其持久化到磁盘。现在我正在将应用程序升级到.Net 2.0,我发现这个决定已经回来让我陷入困境。

我很想知道是否有人知道.Net 1.1兼容字符串散列算法的.Net 2.0实现。

显然,最好的解决方案是给自己买一台时间机器,然后回到2002年,即使考虑使用这种方式使用哈希码也可以自己开始。由于这似乎不太可能,我正在寻找一种解决方法。我的用户在他们的系统上有这些数据,所以我不可能对哈希或类似的东西进行一次大的转换。

当更改为2.0时,我将更新代码,因此它当然使用MD5或SHA。

我考虑从Mono中提取String.GetHashCode源,但由于Mono是GPL而我的应用程序是商业用途,实际上不是一个选项。我甚至不知道Mono实现是否与MS .Net实现兼容,因为GetHashCode的合同不要求它兼容。

有什么想法吗?

1 个答案:

答案 0 :(得分:6)

你不是唯一一个,似乎:Getting .NET 1.1 CLR String Hash Codes In The .NET 2.0 CLR

指向BackCompatibleStringComparer的链接(据称,我无法验证)显示旧版GetHashCode()的实施情况。

相关问题