У меня есть мини-система, где веб-интерфейс передает файл в формате base64 бэкэнду. Я использовал convert.frombase64string, чтобы преобразовать формат base64 в байтовый массив, и использовал поток файлов для сохранения файла на сервере.
Коды показаны ниже:
byte[] bytes = Convert.FromBase64String(file.Split(',')[1]);
using (var file = new FileStream("D:test.txt", FileMode.Create))
{
file.Write(bytes, 0, bytes.Length);
file.Flush();
}
var db = await _context.insertDB.FromSql("INSERT INTO blobTable (blob) VALUES ('" + bytes + "')").SingleAsync();
И это результат, который я выбираю из blobTable.
В качестве результата возврата из Convert.FromBase64String () используется байтовый массив. Так что я решил сохранить это значение в моей базе данных, которая является postgres с колонкой bytea [].
Проблема в том, что это так странно, что когда я пытаюсь
console.writeline(bytes);
Результат выводится как «system.byte []» вместо значения в байтах. Так что «system.byte []» хранится в моей базе данных вместо фактического значения.
Кто-нибудь может сказать мне, как мне сохранить возвращаемое значение из convert.frombase64string () в столбце postgres bytea []? Спасибо тебе.