Linq to Sql 检查是否存在多条记录

Linq to Sql check if multiple records exist

当使用 Linq 到 Sql 并更新类似交叉引用 table 的内容时,它们可能已经是 table 中的记录,只需要留在那里,记录将可以删除的更改和记录。处理这个问题的最佳做法是什么?我正在考虑全部删除并重新创建。不好吗?

我是否应该删除参考记录并重新填充所有这些记录。自然地删除不再需要的东西并创建需要的东西。

我是否应该尝试执行某种类型的检查并删除旧的和正在添加的内容

什么是更好的方法?

MERGE 语句 (Whosebug Merge Example) 在这种情况下可能效果最好。它将允许您自行决定同时操作多行。

Linq to SQL 不是这种场景的最佳工具。

基本上你得自己写update/insert/delete。您可以使用 exists() any() 等来创建集合,但结果 SQL 将是所有单独的插入、更新。

毕竟是查询语言

对于你的情况,我会通过存储过程进行合并并调用它。