【问题标题】:insert , delete in C# lambda expression [closed]在 C# lambda 表达式中插入、删除 [关闭]
【发布时间】:2013-04-24 07:32:15
【问题描述】:

我想知道使用的区别

DB.MyTable.InsertOnSubmit(..);
and
DB.MyTable.InsertAllOnSubmit(..);
----------------------------------
DB.MyTable.DeleteOnSubmit(..);
and
DB.MyTable.DeleteAllOnSubmit(..);

我也想知道怎么用,谁能给我举个例子?

【问题讨论】:

  • 看看函数取的参数!
  • @Tim Schmelter ,我知道如何使用 InsertOnSubmit() 和 DeleteOnSubmit() 。但我不知道如何获取 InsertAllOnSubmit() 和 DeleteAllOnSubmit() 的对象。

标签: c# linq linq-to-sql lambda


【解决方案1】:
InsertOnSubmit(yourSingleData) and InsertAllOnSubmit(yourMultipleData as List) 

删除单个数据,

var obj = Db.MyTable.Where(x => x.SomeData == "something").SingleOrDefault();
Db.MyTable.DeleteOnSubmit(obj);

要删除多个数据,

var obj = Db.MyTable.Where(x => x.SomeData == "something").ToList();
Db.MyTable.DeleteAllOnSubmit(obj);

【讨论】:

    【解决方案2】:

    在 LinqToSql 中,上下文派生自 DataContext,区别在于是否提交特定的单个实体或它们的集合。它们会这样使用:

    using (var context = new MyDataContext()) {
      context.Things.InsertOnSubmit(new Thing { ... })
    }
    

    您将在其中填充 Thing 的实例以备持久化。

    在第二种情况下(全部插入),您将提供一个集合。

    【讨论】:

      猜你喜欢
      • 2023-01-31
      • 2012-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-01
      • 1970-01-01
      • 2022-11-14
      • 1970-01-01
      相关资源
      最近更新 更多