c# - EF Core 获取从 DbContext 更新的数据
问题描述
我的“部门表格”中有此代码
private readonly SIMContext _SIMContext;
private Department model;
public Frm_Department(SIMContext SIMContext)
{
InitializeComponent();
_SIMContext = SIMContext;
}
这是从我添加到加载事件的数据库中获取数据的方法
我有分配给gridControl DataSource的BindingSource组件“dataBindingSource”
private async Task LoadDataAsync()
{
// Call the LoadAsync method to asynchronously get the data for the given DbSet from the database.
await _SIMContext.Departments.LoadAsync().ContinueWith(loadTask =>
{
// Bind data to control when loading complete
dataBindingSource.DataSource = _SIMContext.Departments.Local.ToBindingList();
}, TaskScheduler.FromCurrentSynchronizationContext());
}
我所有的 CRUD 操作都可以正常工作(使用 DbContext)。
现在问题来了:
如果我直接(手动)向数据库添加或删除记录(不使用 DbContext)并且如果我调用 LoadDataAsync 方法,我会毫无问题地获得所有记录。
但是当我编辑任何记录(手动)(不使用 DbContext)然后调用 LoadDataAsync 方法时,我得到的旧值没有更新。
我该如何解决这个问题?我尝试:
dataBindingSource.ResetBindings(false);
var state = _SIMContext.Entry(model).State;
state = EntityState.Modified;
但没有任何成功。
我将 EF Core 3.1.15 与 .Net 4.7.2 一起使用
解决方案
推荐阅读
- image - Liquid Code Shopify - 如何限制带有文本的动态图像部分的图像大小?幻灯片容器
- sql - SQL SELECT 字段中的 Grafana CONCAT
- ms-office - 确定Excel公式的符号模式(R1C1或A1)的可靠方法
- java - 将现有 Spring MVC 项目迁移到 Spring Boot
- xamarin - Xamarin 错误域=NSURLErrorDomain 代码=-1001“请求超时。”
- powerbi - Power BI - 表中忽略的关系
- arrays - Ruby 数组条件
- javascript - 如何在图像更改为以后使用之前从图像中获取 src?
- javascript - 如何在数组中找到最大的姓氏
- python - 列出不产生多个敌人 Pygame