linq-to-sql - 执行表截断的正确 LINQtoSQL-ish 方法是什么?

标签 linq-to-sql tsql data-access-layer truncate

我有一个项目,它有一个强大的数据访问层,使用 LinqtoSQL 来处理几乎所有接触我们数据库的事情。我需要构建一个辅助类,将一些常见的 crud 操作从 CLSA 对象桥接到 LinqToSql 对象。一切都运行顺畅,直到我需要在表上进行截断,而我所拥有的只是“删除”方法。

呃哦。快速搜索发现有些人正在使用 YourContext.ExecuteCommand(),这很好,但这些天我正在尝试尽可能多地使用“t-sql-less”。

是否有 LINQ 方法来执行 truncate on a table ?或者我只是clueless

最佳答案

如果不执行自定义 T-SQL 查询,这是不可能的。正如您可能已经知道的那样,执行 .Delete() 和 SubmitChanges 后记会导致 DELETE 语句。

当然,您可以创建一个截断表的存储过程,然后从 LINQ 调用该过程,但我相信这并不是您真正想要的。

关于linq-to-sql - 执行表截断的正确 LINQtoSQL-ish 方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/188940/

相关文章:

wcf - LinqToSql 和 WCF

sql - 从表和引用表中删除重复行 microsoft sql server

c# - 在 Entity Framework 中使用动态 where 子句

.net - 类型化数据集的缺点是什么

entity-framework - Microsoft 对 Entity Framework 中的二级缓存有何建议?

linq-to-sql - DataContext.GetTable<TEntry> 的作用是什么?

c# - 如何将复选框动态添加到 WPF 应用程序中的网格中

sql-server - 如何查找包含 <text> 的存储过程?

sql - CONCAT(列)OVER(分区依据...)?对行进行分组连接而不对结果本身进行分组

asp.net-mvc - 使用 LINQ to SQL 从数据库中删除所有记录