linq - 使用 LINQ to SQL 更新

标签 linq linq-to-sql

如何根据 LINQ to SQL 中的特定 ID 更新记录?

最佳答案

LINQ 是一个查询工具 (Q = Query) - 因此,除了通过(面向对象的)数据上下文(在 LINQ-to-SQL 的情况下)之外,没有神奇的 LINQ 方法可以仅更新单行。要更新数据,您需要将其取出,更新记录,然后提交更改:

using(var ctx = new FooContext()) {
    var obj = ctx.Bars.Single(x=>x.Id == id);
    obj.SomeProp = 123;
    ctx.SubmitChanges();
}

或者编写一个在 TSQL 中执行相同操作的 SP,并通过数据上下文公开 SP:

using(var ctx = new FooContext()) {
    ctx.UpdateBar(id, 123);
}

关于linq - 使用 LINQ to SQL 更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/909960/

相关文章:

.net - EF 代码优先 : Methods that can translate to SQL

c# - Linq to SQL 和自动映射器

c# - .NET Core EF,何时避免异步数据库调用

linq-to-sql - LINQ 到 SQL : Reuse lambda expression

c# - 动态构建从 linq 到实体查询的选择列表

c# - LINQ:将某些对象属性选择到同一对象中

c# - 如何在 EF Core 中连接多个表中仅包含某些列的数据集?

c# - 在 C# 中使用正则表达式匹配目录中的所有文件

c# - 使用动态表达式对组进行 IQueryable LINQ 转换错误

c# - LINQ to SQL 中的连接池