【发布时间】:2018-01-29 13:20:05
【问题描述】:
我想创建一个函数,使我能够始终根据这两个输入参数生成唯一值:
public string ReturnUniqueValue(DateTime date, string ID)
{
// Logic here
}
日期参数格式如下:
2017-08-14 11:55:32.00
ID 格式如下:
112452573848
我想生成一个长度为 40 个字符且永不重复的唯一哈希。
这可以用 datetime 参数 + 唯一的 id 字符串吗?
我认为 datetime 永远不会相同(这几乎是不可能的),因此这应该能够始终产生独特的价值?
【问题讨论】:
-
您可能会通过组合这 2 个来获得重复项(除非 ID 始终是唯一的)。如果您想要一个有点独特的字符串,请查看
Guid.NewGuid() -
@Shyju 是的,ID 总是唯一的,最好的散列方法是什么? :)
-
@adiga 只是组合了两个字符串? :D
-
改用 Guid,它正是为此而创建的。使用您的方法,我可以根据需要多次传递相同的 DateTime 实例和 ID 字段
-
@CamiloTerevinto 我不能使用 GUID,因为数据来自 API 源,我需要以某种方式对其进行哈希处理,以便比较我的数据库和 API 中的值 ^^跨度>