Код, который вы даете определенно удаляет тире. Короткая, но полная программа, демонстрирующая, что:
using System;
using System.IO;
using System.Security.Cryptography;
class Test
{
static void Main(string[] args)
{
using (HashAlgorithm hashSHA1 = new SHA1Managed())
{
// Actual data doesn't matter
using (Stream data = new MemoryStream())
{
byte[] hash = hashSHA1.ComputeHash(data);
Console.WriteLine(BitConverter.ToString(hash).Replace("-", ""));
}
}
}
}
Итак, потенциальная причина вашей проблемы:
- Вы не запускаете сборку, как вы думаете
- У вас есть другой код, который выполняет хэширование, но не имеет
Replace
вызов
- Вы смотрите на неправильный бит интерфейса:)
Трудно догадаться, какая из этих (или что-то еще) является проблемой, но этот код не так ...