我正在设置一个Blob,我需要获取一些东西以将其插入数据库中,因此我编写了一个代码以根据我的Stream获取hashId
我已经尝试在我的FileStorageService上使用IFormFile,但这有点不对。
private string GetMD5HashFromFile(Stream data)
{
using (var md5 = MD5.Create())
{
using (var fileStream = data)
{
var hash = md5.ComputeHash(fileStream);
var hashString = Convert.ToBase64String(hash);
return hashString.TrimEnd('=');
}
}
}
此代码始终会生成相同的哈希,因此无法将Blob信息保存在数据库中
答案 0 :(得分:0)
基于C.Evenhuis的评论,我的一个朋友以这种方式下定决心:
private string GetMD5HashFromFile(Stream data)
{
using (var md5 = MD5.Create())
{
data.Position = 0;
var hash = md5.ComputeHash(data);
var hashString = Convert.ToBase64String(hash);
return hashString.TrimEnd('=');
}
}