Я проверяю подпись файла iformfile , и мне любопытно, могу ли я избежать сброса до начала потока после того, как мой чек будет выполнен. Я намерен распоряжаться копией исходного потока и его читателя, не нуждаясь в сбросе исходного потока. Я хотел подтвердить это со всеми вами. // file is type IFormFile
var stream = file.OpenReadStream();
var memoryStream = new MemoryStream();
stream.CopyTo(memoryStream);
using (var reader = new BinaryReader(memoryStream))
{
var signatures = _fileSignature[ext];
var headerBytes = reader.ReadBytes(signatures.Max(m => m.Length));
return signatures.Any(signature =>
headerBytes.Take(signature.Length).SequenceEqual(signature));
}
< /code>
Я думаю, что этот поток отвечает на часть моего вопроса, однако, OP пытается скопировать из одного читателя другому читателю, тогда как я копирую из одного потока в другой поток, а затем открываю читателя. Если это имеет какое -либо значение.
Подробнее здесь: https://stackoverflow.com/questions/797 ... iginal-str