【发布时间】:2019-12-02 06:32:02
【问题描述】:
我使用 blazor 服务器端并将我的 DbContext 注册为瞬态,我也将数据访问类注册为瞬态,但是如果不更改参数,EF Core 总是返回缓存的数据,除非在查询之前有更新,否则它会返回新数据。
我尝试在每次调用每个数据访问方法而不是依赖注入时创建一个 DbContext 实例,但它也返回缓存数据。
services.AddDbContext<StoreContext>(options =>
options.UseSqlServer(
Configuration["Data:StoreProducts:ConnectionString"]), ServiceLifetime.Transient);
services.AddTransient<DataAccess.Dal>();
这是达尔:
public UserLock GetByUserName(string userName)
{
return context.UserLocks.FirstOrDefault(l => l.User.ToLower() == userName.ToLower());
}
或:
public UserLock GetByUserName(string userName)
{
using (var db = new StoreContext())
{
return context.UserLocks.FirstOrDefault(l => l.User.ToLower() == userName.ToLower());
}
}
如何解决这个问题?
【问题讨论】:
标签: entity-framework-core blazor-server-side