linq - 在 .NET Core 3.1 中使用 LINQ 从文件表中删除行
问题描述
我有一个启用了 FILESTREAM 的 SQL Server 和一个填充了许多行的文件表。我希望能够使用 .NET Core 3.1 中的 LINQ 从此表中删除选定的行。
在我的基础设施层中,我实现了以下内容:
public async Task<bool> DeleteReport(Guid streamId)
{
var query = _dbContext.ReportFileTable
.Remove(await _dbContext.ReportFileTable
.Where(e => e.stream_id.Equals(streamId))
.FirstOrDefaultAsync());
var saved = await _dbContext.SaveChangesAsync();
return saved == 1 ? true : false;
}
这种方法适用于我的其他常规数据库表,但它对 FileTable 失败并在执行时返回超时,_dbContext.SaveChangesAsync();
尽管查询本身显示该行已标记为删除。
Microsoft.EntityFrameworkCore.DbUpdateException
---> Microsoft.Data.SqlClient.SqlException (0x80131904): Execution Timeout Expired.
我知道 .NET Core 对 FileStream 的支持几乎没有。我该如何解决这个问题?
解决方案
推荐阅读
- django - 如何使用 Traefik 的 dnsChallange 获得“www.*.example.org”的证书?
- css - Flipcard 在移动设备上不起作用 - 变换样式问题:preserve-3d?
- rxjs - 使用 Rxjs 构建一个初始化器
- javascript - 我在 JavaScript 文件的变量中定义部分 html 代码时出错
- javascript - 单击外部元素时关闭图库 - JavaScript/Angular
- java - 嵌入式 Jetty 服务器的 JNDI 查找失败
- c++ - 是否可以在构造函数的成员初始化器列表中使用结构化绑定?
- google-cloud-platform - 使用 IAM 条件限制服务账户用户角色
- macos - 如何在终端脚本中连接字符串变量
- github - OAuth 个人令牌访问组织的私人仓库:错误的身份验证错误