问题标签 [submitchanges]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - LINQ DataContext 插入未附加的对象
我创建了两个单独的对象,一个是 Order 类,一个是 TempOrder 类。当我尝试使用 db.TempOrders.InsertOnSubmit(obj) 在数据库中插入 TempOrder 对象,然后调用 db.SubmitChanges 时,Order 对象也被提交(没有附加到数据上下文或任何东西)。数据库中的两个对象之间没有关系,但是我在类中创建了一个简单的成员函数,以在您拥有 TempOrder 时创建 Order 对象,反之亦然(toNewOrder - toNewTempOrder)。我正在使用的代码如下所示:
当调用 db.Add(temp) 时,变更集也包含临时对象和订单对象。我怎样才能避免这种情况?我做错什么了吗?这是因为 .toNewTempOrder() 函数吗?我坚持这一点。
c# - 多久为大量插入调用 DataContext.SubmitChanges()?
InsertOnSubmit
在打电话之前我应该打电话给多少人SubmitChanges
?我正在从 Web 服务添加数据,该服务一次可以返回数万条记录。Web 服务周围的包装类将记录公开为一个IEnumberable
集合,以隐藏复杂的分块机制。
是否有关于在提交之前我应该累积多少插入的指南?
linq - 更新 LINQ 中的更改的问题
我在更新数据库时遇到问题。应用程序显示更新的值,但数据库不显示。没有返回错误。我的桌子有一个PK。使用 DotConnect for Oracle,但 LINQ 语法相同。
控制台读取正确的更新值,但数据库不更新。
数据函数 DFunc.GetFoodOrder(Oid) 和数据上下文函数如下所示。它们都在另一个程序集中作为 LINQ DAL:
linq-to-sql - LINQ to SQL - 存储过程如何与未提交的数据上下文更改交互?
这里有人问:
“Linq-To-Sql 启用调用 SP。如果此 SP 执行更新/删除/插入,我是否需要在它之后 SubmitChanges()?”
答案是:
“不,你不知道。代码可以工作。提交更改只涉及修改后的 LINQ to SQL 对象,而不涉及存储的过程。”
我想澄清一下:
(请原谅,我对 LINQ 比较陌生)
是的,但是存储过程不会绕过数据上下文对象并修改数据库本身吗?(而 linq 只修改 datacontext 对象,直到调用 datacontext.submitchanges 方法,然后它会修改数据库)
我可以让存储过程以某种方式修改我的 datacontext 对象吗?它已经这样做了吗?
我可以这样吗
- 如果我用 linq 调用 SP(并且我假设它直接修改数据库),
- 然后使用 linq 修改我的 datacontext 对象,并提交我对我的 datacontext 对象所做的更改,
我所做的两个不同的更改(一个使用 SP,另一个使用 Linq 到我的数据上下文)不会干扰?
我真正想要的是一种让我的存储过程修改我的数据上下文的方法。这可能吗?
我应该提到,我正在将一个网站从 SQL 转换为 LINQ,该网站主要包含存储过程,并试图与哪些存储过程转换为 LINQ 以及哪些存储过程保留在 SQL 中并使用 LINQ 对它们进行 SP 调用。
谢谢你的帮助,-杰夫
linq - Linq SubmitChanges() 函数 - 何时调用?
使用 Linq 操作数据时,必须多久调用一次 SubmitChanges() 方法?
在我的项目中,有一些与外键相关的表。在创建 SQL 中,这些外键受到约束,因此如果不首先删除相关记录,就无法删除属于关系的记录。
因此,需要删除关系中的记录有一个特定的顺序。我是否必须删除每条记录,每次都在数据库上执行 SubmitChanges() 函数,或者我可以一次执行所有删除?
编辑:我的主要问题是:在 SubmitChanges() 上删除记录的顺序是否与在代码中删除它们的顺序相同?
linq-to-sql - Linq to SQL InsertOnSubmit 用于多个对象
我对 Linq to SQL InsertOnSubmit 有疑问,它似乎只适用于表中的第一项。
例如以下内容:
我只将第一个实体(“Test Note Title 1”)插入数据库。如果我在每个 InsertOnSubmit 之后放置一个 SubmitChanges,则所有行都成功插入。
上面的 Types 都是继承自 Note 类,所以插入到同一个表中。
但是,我在使用非派生类时遇到了同样的问题。
我花了很长时间看这个,但找不到我做错了什么。InsertOnSubmit/SubmitChanges 的整个想法是这样您就可以进行多项更改,因此我必须缺少一些简单的东西。
exception - sqlite 异常身份问题
当程序执行 mainDb.SubmitChanges() 时出现此错误:
插入项目值 (@p0)
SELECT CONVERT(Int, SCOPE_IDENTITY()) AS [value] -- @p0: Input String (Size = 0; Prec = 0; Scale = 0) [test2] -- Context: SqlProvider(Sql2008) Model: AttributeMetaModel Build: 3.5 .30729.4926
我的代码有以下文件: Program.cs [这是主程序文件]
另一个文件是:mainDb.cs [此文件具有继承自 DataContext 的类]
最后一个文件是 Project.cs [这是将其映射到 sqlite 数据库的类]:
代码运行良好,除非它执行 mainDb.SubmitChanges(); 在 Program.cs 中,有什么想法吗?
wcf - LINQ to SQL SubmitChanges 不工作 FILESTREAM 表
我有一些代码将数据插入到一些表中(一个表有一个 FILESTREAM 列),然后在完成后调用 SubmitChanges。
我已经引用了以下链接,但它们似乎不是我的问题:
LINQ to SQL:SubmitChanges() 不起作用?
每个表都有一个主键。
我有 14 个表,我看到 linq.designer.cs 中包含 14 个 IsPrimaryKey=true
虽然我确实看到文件表中缺少“AutoSync=AutoSync.OnInsert”,但我认为这是因为未设置 IDENTITY(使用 guid 作为主键)。
当我检查数据库时,没有插入任何内容。linq.log 显示:
当我查看 Server Profiler 时,它会记录 RPC:Completed exec sp_executesql "Good Insert Statement"
当我通过 Server Manager Studio 手动运行 sql 时,一切正常。我可以通过使用 SA 登录或使用 Web 服务使用的凭据成功地做到这一点。
不过,LINQ SubmitChanges 不会引发错误。它不工作的任何原因?我没有在任何部分类中重载任何 Insert/Update/DeleteFile 函数。
修改其他表似乎工作正常。我想知道它是否与 FILESTREAM 列有关。
我的连接字符串是:
一旦我手动将记录放入表(FILESTREAM 表)中,我就可以很好地读取该数据。
最后,我为 Transact-SQL 访问配置了 FILESTREAM,而不是为文件 i/o 流访问配置了 FILESTREAM。根据我的理解,我认为不需要将共享文件夹保存到数据位置。我希望一切都通过数据库来获取 FILESTREAM 数据。
谢谢!
固定的
我有以下代码:
我的 submitchanges 看起来像:
任何人?任何人?我忘记了完整的声明...大声笑。我在想我可能会在 submitchanges 区域添加更多内容并且可能想要回滚,所以我将 using 语句留在那里但从未提交我的更改......谢谢大家!
linq-to-sql - linq to sql 继续错误
当我尝试执行 SubmitChanges() 时,我的 linq 查询出错
问题是我现在在我的项目中尝试做的事情我得到了同样的错误(我猜 linq 仍然试图做错误更改)
我该如何清理待处理的更改或以其他方式处理该问题?
谢谢!
linq-to-sql - Linq to sql 停止工作
嘿,我有一个奇怪的问题,我已经使用 Linq 构建了一个项目,并且大部分工作正常,但是有时所有 Linq 的存储库命令都停止工作,并且我遇到错误,当我覆盖现有的 dll 时问题解决了Linq 项目的文件?也许一个错误的命令会伤害 Datacontext 的其余部分?问题是我该如何处理?
谢谢,
等等,我得到了一些类似下面的错误: 将请求发送到服务器时发生了传输级错误。(提供者:TCP 提供者,错误:0 - 现有连接被远程主机强行关闭。)