entity-framework-6 - EF 6.0 如何取消删除和修改属性?
问题描述
我有一个表Table1
,State
其中包含1
表示正常数据和10
已删除数据的列,我想取消删除操作并将此列更新为10
当我在 EF Database First 中删除它时:
public override int SaveChanges()
{
foreach (var entry in ChangeTracker.Entries())
{
switch (entry.State)
{
case EntityState.Deleted:
entry.State = EntityState.Modified;
entry.CurrentValues["State"] = 10;
break;
default: break;
}
}
return base.SaveChanges();
}
并像这样删除:
var data = dbContext.Table1.Find(primaryKey);
dbContext.Table1.Remove(data);
dbContext.SaveChanges();
在base.SaveChanges()
我检查State
值之前entry.Entity
,它已从更改1
为10
,但之后SaveChanges
,State
数据库中的值没有更改(仍然1
)。
我怎样才能使这项工作?
解决方案
推荐阅读
- nginx - 我的 Nginx,每 2 次尝试执行一次 proxy_pass
- pytorch - GAN 测量 - FID 分数
- html - 简单的获取请求?
- powershell - Office365 将 PowerShell 分组以订阅成员
- javascript - 如何在 react-native 中显示(二维)字符串数组
- c++ - 如何在 C++ 中接收任何类型的函数参数并获取函数内部传递的变量的类型?
- html - 像斐波那契这样的 CSS 网格
- angular - 如何从其他组件访问 this.facebookService
- css - PWA 迁移到 Ionic 4:iOS 滚动不起作用
- javascript - 材质ui表,编辑单元格选择组合框