我有一个相当大的 Blazor 项目,其中有一些小型存储库(用于简单实体),这些存储库源自像这样的 GenericRepository
public class MySmallRepositoryOne : GenericRepository<MySmallEntityOne>, IMySmallRepositoryOne
但是我也有用于更复杂实体的存储库,这些实体不是从 GenericRepository 派生的。
有没有办法制作
public override int SaveChangesAsync()
{
// my code
return base.SaveChangesAsync();
}
覆盖所有存储库的 SaveChangesAsync() 吗?或者每个存储库都需要从通用派生并且它是通用的,我放置了这个覆盖?
是的,您可以覆盖特定“xxxDbContext”中的“savechanges”。但SaveChangesAsync应该异步编写以使用await。不需要派生每个存储库。
public override int SaveChanges()
{
return base.SaveChanges();
}
public override Task<int> SaveChangesAsync(CancellationToken cancellationToken = default)
{
return base.SaveChangesAsync(cancellationToken);
}