使用 LINQ to SQL 进行批量更新

2024-05-07

有没有办法使用 LINQ 对集合进行批量更新?目前如果我有一个List<myObject>我想将列表中的每一行的column1更新为等于TEST,我将设置一个foreach循环,然后为每个单独的对象设置值,然后保存它。这工作正常,但我只是想知道是否有一些 LINQ 方法在那里我可以做类似的事情myOject.BulkUpdate(columnName, value)?


使用 Linq 表达式和 Terry Aney 关于此主题的优秀库,您的要求完全可以实现。

使用 LINQ to SQL 批量更新和删除 https://terryaney.wordpress.com/2008/04/14/batch-updates-and-deletes-with-linq-to-sql/

您给出的示例的更新如下:

using BTR.Core.Linq;
...

Context.myObjects.UpdateBatch
(
    Context.myObjects.Where(x => x.columnName != value),
    x => new myObject { columnName = value}
);

编辑(2017-01-20):现在以 NuGet 包的形式提供,这毫无价值@https://www.nuget.org/packages/LinqPost/ https://www.nuget.org/packages/LinqPost/.

Install-Package LinqPost
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 LINQ to SQL 进行批量更新 的相关文章

  • 使用存储库模式的 ASP.NET MVC

    目前 我在所有操作中使用 EF 并直接使用其数据上下文 但自从我开始阅读有关松散耦合和可测试性的内容后 我认为这不是最好的方法 在开始重构所有当前代码之前 我试图了解所有的优点和缺点 问题一 考虑到每个实体都需要自己的存储库 因此必须设置自
  • 如何使用 Linq to SQL 从存储过程中检索多行?

    我最近开始使用 Linq to SQL 想知道如何通过执行存储过程来获取多行 这是我想要使用的一个简单的 sp CREATE PROCEDURE gsp ftsmultiple SearchKey varchar 100 AS BEGIN
  • ASP.NET 列表视图->单击行->执行操作

    我需要以下方面的帮助 我有一个用隐藏代码填充的列表视图 Linq gt Sql ListView1 DataSource from x in database ITEMS select x ListView1 DataBind 项目内容 I
  • 使用 LINQ to SQL 进行批量更新

    有没有办法使用 LINQ 对集合进行批量更新 目前如果我有一个List
  • 难道 Linq to SQL 没有抓住要点吗? ORM 映射器(SubSonic 等)不是次优解决方案吗?

    我希望社区能够了解我对 Linq to Sql 和其他 ORM 映射器的一些想法 我喜欢 Linq to Sql 以及用本机开发语言表达数据访问逻辑 或一般的 CRUD 操作 的想法 而不必处理 C 和 SQL 之间的 阻抗不匹配 例如 要
  • List、IList、IEnumerable、IQueryable、ICollection,哪个返回类型最灵活?

    我之前已经在这里看到过这个问题 但我不满意我理解的完整后果 问题是使用 linq to sql 返回的数据层应该使用什么返回类型以获得最大的灵活性和查询能力 这是我读过 发现的 IEnumerable 是有限的 只允许向前读操作 IEnum
  • 我的 DataContext 怎么错了?

    我使用 LINQ To SQL 一段时间了 我通常在解决方案中执行以下操作 在一个项目中 我创建了一个 dbml 架构 在另一个项目中 我创建了一个简单的 DataAccessLayer DAL 它了解我的第一个项目 并实例化 DataCo
  • 具有条件连接和非匿名返回的 LINQ 查询

    我有一个针对 SQL Server 数据库的 LINQ 查询 该查询将每行的数据写入一个对象Person 在某些情况下 我想加入其他表并添加更多字段Person对象 同时利用 LINQ 延迟加载 The Person类看起来像这样 publ
  • 有没有任何工具可以查看针对数据库运行的查询?

    是否有任何工具可以检查 asp net 或 sql server 并报告针对数据库运行的所有查询 我问这个问题的原因是我正在一个项目中使用 Linq 并且想要仔细检查它对每个页面实际执行的操作 理想情况下 我想在浏览器中查看页面并获得为创建
  • 同一个表的多个外键

    我有一个参考表 其中包含性别 地址类型 联系人类型等各种受控值查找数据 许多表都有指向该参考表的多个外键 我还有多对多关联表 其中同一个表有两个外键 不幸的是 当这些表被拉入 Linq 模型并生成 DBML 时 SQLMetal 不会查看外
  • 具有两个表的谓词构建器

    A Party可以有一个或多个Contact对象 我想选择全部Parties谁的街道名称包含特定关键字 如果我只想搜索Party我可以使用下面的代码 但我如何扩展它来搜索Contact public IQueryable
  • 如何使用 linq to sql 一次更新多行?

    Table id userid friendid name status 1 1 2 venkat false 2 1 3 sai true 3 1 4 arun false 4 1 5 arjun false 如果用户发送userid 1
  • 方法“Boolean Contains(System.String)”不支持对 SQL 的转换

    方法 Boolean Contains System String 不支持对 SQL 的转换 查询是 IsQueryable 但这停止工作 foreach string s in collection1 if s Length gt 0 q
  • Linq - 加入混乱

    为了回答这个问题 我们假设我有表 A 和 B 并且它们之间存在 1 1 关系 在 Linq 查询中 我可以执行以下操作 from row in A where row B Description someValue select A 其中
  • 在 LINQ-SQL 中,将 DataContext 包装为一个 using 语句 - 优点 缺点

    有人可以从性能 内存使用 编码的简易性 正确的做法等因素方面阐述将 DataContext 包装在 using 语句中或不在 LINQ SQL 中之间的优缺点吗 Update 在一个特定的应用程序中 我发现 如果没有将 DataContex
  • 如何在 linq to sql 中批量插入/更新?

    我该如何做这两种情况 目前我正在做这样的事情 public class Repository private LinqtoSqlContext dbcontext new LinqtoSqlContext public void Updat
  • LINQ2SQL:如何实现通用最大字符串长度验证?

    LINQ2SQL 中的一个常见问题是 虽然 NET 字符串允许为其变量分配任意长度 但您的数据库可能具有特定的最大长度约束 如 VARCHAR 5 这将导致 SQL 错误消息 字符串或二进制数据将被截断 这是非常没有帮助的 因为它不会告诉您
  • LINQ to SQL DataContext 缓存

    我使用 Linq to SQL 作为我的 DAL 层 在单元测试期间我发现我的对象不是从数据库返回 而是从 DataContext 缓存返回 奇怪的是 当对象从缓存返回时 为什么需要单独调用数据库来获取所有字段 不管怎样 我实现了一个 Cl
  • 无效操作。连接已关闭。 ASP.NET MVC

    这种情况并不经常发生 但有时我会收到一封通过电子邮件发送给我的异常报告 指出这段代码 我想知道您是否发现以下代码有任何问题 我无法让它在本地失败 并且使用断点跟踪数据总是会一步步给出正确的结果 namespace DomainModel C
  • 如何使用 LAMBDA 表达式在 LINQ 中执行 IN 或 CONTAINS?

    我有以下 Transact Sql 我正在尝试将其转换为 LINQ 并且很挣扎 SELECT FROM Project WHERE Project ProjectId IN SELECT ProjectId FROM ProjectMemb

随机推荐