问题标签 [savechanges]
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# - SaveChanges 不保存更改
我有一个应用程序可以使用 EF 按预期加载所有数据,但是,在保存时,我根本无法让它工作。
我一开始很简单,只使用组合框中的值来更改数据库中的 1 个字段。当值改变时,它执行
我还确认这改变了EntityState
toModified
并且该值是我所期望的。尽管如此,调用
不会将任何内容保存回数据库。我知道这可能是我缺少的一些简单的东西,但我根本不知道那是什么。
更新:hdb.context.Attach(this.t.Incident);
在使用 SaveChanges 之前
添加会导致InvalidOperationException
“一个实体对象不能被多个 IEntityChangeTracker 实例引用。 ”
如果有任何区别,这是一个桌面应用程序,而不是一个 Web 应用程序
entity-framework - 使用实体框架中的 ObjectContext.SaveChanges 方法选择性地审核日志记录
我需要在我的应用程序中执行审计日志记录,并且我想SaveChanges
记录对数据库的任何更改。在某些情况下,我不希望发生日志记录。SaveChanges
告诉不执行审计日志的最优雅的方式是什么?我正在使用实体框架 4。
performance - 实体框架 SaveChanges() 第一次调用很慢
我很欣赏这个问题之前已经提出过几次,但我找不到明确的答案(也许没有答案!)。
无论如何,标题确实说明了一切。创建一个新上下文,添加一个新实体,SaveChanges() 需要 20 秒。在同一上下文中添加第二个实体 SaveChanges() 即时。
对此有什么想法吗?:-)
============ 更新 ==============
我创建了一个非常简单的应用程序,针对我现有的模型运行以显示问题......
请不要评论我的代码——除非它是一个无效的测试;)
结果是:
查询 1 = 3999.2288ms (3.9992288s)
SaveChanges 1 = 3391.194ms (3.391194s)
查询 2 = 18.001ms (0.018001s)
SaveChanges 2 = 4.0002ms (0.0040002s)
查询 3 = 14.0008ms (0.0140008s)
SaveChanges 3 = 3.0002ms (0.0030002s)
查询 4 = 13.0008ms (0.0130008s)
SaveChanges 4 = 3.0002ms (0.0030002s)
查询 5 = 10.0005ms (0.0100005s)
SaveChanges 5 = 3.0002ms (0.0030002s)
第一个查询需要时间,我认为是视图生成?还是数据库连接?
第一次保存需要将近 4 秒,对于我的应用程序中更复杂的保存需要超过 20 秒,这是不可接受的。
现在不知道该去哪里:-(
更新...
SQL Profiler 显示第一次查询和更新很快,并且第一次没有什么不同。所以我知道延迟是怀疑的实体框架。
wcf - EF4/WCF SaveChanges() 最佳实践
这就是我们在 WCF 中为我们的 EF 实体实现通用 Save() 服务的方式。TT 为我们完成工作。尽管我们对此没有任何问题,但我不想假设这是最好的方法(即使它可能是)。你们看起来非常聪明和乐于助人,所以我想我会提出这个问题:
有没有更好的办法?
c# - SaveChange 后刷新数据源不起作用
我在 an 中添加数据ObjectSet
并SaveChanges
在ObjectContext
. 但是新数据没有显示在DataGrid
!
代码:
UPD:解决方案
.net - 使用实体框架继承时插入失败
我有两个表,一个名为 Person,它是抽象的,具有标量属性“Id”和“Name”,其中键“Id”是主键。另一个名为“Student”的继承自 Person
我使用以下代码将学生插入数据库:
当我调用 SaveChanges 将数据保存到数据库时,发生了 System.Data.UpdateException。内部异常显示“无法将值 NULL 插入到列 'Id'、表 'Temp.dbo.PersonSet';列不允许空值。INSERT 失败。\r\n语句已终止。” 谁能告诉我为什么?以及如何纠正这一点?
android - 如何保存我的活动状态
我EditText
在它下面有一个列表视图。所以它是这样工作的——当你在编辑文本中输入一些东西时,它会显示列表中与上面的文本匹配的项目。无论如何,我需要保存列表视图的状态。表示如果用户离开此屏幕并返回,列表视图应具有相同的状态,并且编辑文本应填充相同的文本。希望你明白了。
请告诉我如何实现这一目标。
c# - 如何忽略 SaveChange EF4 中的错误
请参阅示例 1。如果某些数据输入错误,EF4 将无法生存,也不会有任何记录。
问题是:是否作为一种力量忽略一条记录中的错误并继续。
示例1:
示例 2 替代方案:
c# - 如何取消 SaveChanges
我做了第一个 SaveChanges 和苍蝇异常 (UpdateException)。我做了第二个 SaveChanges 并再次执行第一个错误。该怎么办
entity-framework - 实体框架 SaveChanges() 不写入数据库
当我尝试使用 SaveChanges() 将实体写入数据库时,调用成功(返回 1),但实际上并未写入数据库。此外,通过添加 savechanges 事件处理程序,我可以看到该项目确实通过了具有正确属性的 save 事件(具体来说,一个对象更改了状态,它是我发送的新实体)。当我阅读数据库后记时,没有新的数据行。没有错误或抛出异常...
我看过类似的文章,但大多数都缺少一行或不正确(甚至是乱序)。在这种情况下,我可以看到它从头到尾成功地通过了系统,但实际上并没有最终进入数据库。
由于在另一篇文章中被问到,这是我的连接字符串:
metadata=res://*/CommunityEF.CommunitySystem.csdl|res://*/CommunityEF.CommunitySystem.ssdl|res://*/CommunityEF.CommunitySystem.msl;provider=System.Data.SqlServerCe.3.5;provider connection string="Data Source=|DataDirectory|\DB\Database1.sdf"" providerName="System.Data.EntityClient" />
另外,这不重要(但我知道它确实如此),但我使用的是 VS2010 Express,它是一个 Windows 应用程序,而不是一个 Web 应用程序。
预先感谢您在此问题上的帮助。