我正在开发一个使用 EF Core 的项目;在一种特定情况下,我必须使用原始 SQLite 命令更新实体的身份。
构建一个 SqlCommand 并执行它由于某种原因不起作用,以及直接将参数传递给ExecuteSqlCommand()
,它总是抛出一个异常(我猜这是当前 Sqlite 驱动程序中的一个错误)。
但是,理论上,不应该下面的代码
string commandText = $"UPDATE {table} SET Id={idPair.Value} WHERE Id={idPair.Key};";
已经阻止了 SQL 注入,因为这里
table
是我直接从 DbContext 的模型中获得的表名
idPair
是一个保证是 KeyValuePair<int, int>
?
我主要是在问,因为我不知道是否应该取消此特定警告,或者尝试以其他方式执行此操作(无论如何,在 EntityFrameworkCore.Sqlite 上打开错误报告都在待办事项列表中)。
倚天杖
忽然笑
拉丁的传说
相关分类