Varbinary(max) 太大,无法在 ASP.NET Core 中读取

问题描述 投票:0回答:0

在数据库中,我使用数据类型为

varbinary(max)
的列来保存图像,但是当我加载图像时,出现超时。

public async Task<byte[]> UploadImage(IFormFile req)
{
    using var ms = new MemoryStream(16 * 1024);
    await req.CopyToAsync(ms);

    byte[] result = ms.ToArray();

    ms.Close();
    ms.Dispose();

    return result;
}

public string RetrieveImage(byte[] data)
{
    return string.Format("data:image/png;base64,{0}", Convert.ToBase64String(data, 0, data.Length));
}

我试图找出答案,但它一直报错

处理请求时发生未处理的异常。
Win32Exception:等待操作超时。
未知位置

SqlException:执行超时已过期。在操作完成之前超时期限已过,或者服务器没有响应。 Microsoft.Data.SqlClient.SqlConnection.OnError(SqlException 异常,bool breakConnection,Action wrapCloseInAction)

SQL Server中显示的数据为

<Binary data>

sql-server asp.net-core file-upload varbinarymax
© www.soinside.com 2019 - 2024. All rights reserved.