gpt4 book ai didi

.net - Table.DeleteOnSubmit 生成的 SQL 匹配所有列

转载 作者:行者123 更新时间:2023-12-01 10:05:27 25 4
gpt4 key购买 nike

我在使用 LINQ to SQL 的棕地项目中遇到了一个问题,即调用 Table<T>.DeleteOnSubmit导致具有 WHERE 的 SQL 查询表中每一列的子句。

这是默认行为吗?我该如何更改它以使其仅匹配主键?

编辑

确认一下,生成的类有一个主键:

[Column(Name="id", Storage="_Id", AutoSync=AutoSync.OnInsert, 
DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
public long Id
{
...
}

最佳答案

是的 - Linq-to-SQL 数据模型有一个名为 UpdateCheck 的属性,适用于任何表中的每一列。该属性指示该列是否将用于在更新行之前检查该行是否未更改。

同一属性还用于在删除某行之前检查该行是否未更改。因此,如果您只是将模型中的所有列(主键除外)设置为 UpdateCheck = Never,那么您应该得到您要查找的内容。

enter image description here

关于.net - Table<T>.DeleteOnSubmit 生成的 SQL 匹配所有列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11322818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com