大佬教程收集整理的这篇文章主要介绍了WPF MVVM 存储库模式实现,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 EF Core 在 WPF MVVM 中开发一个应用程序,并将其作为当前仅关注 2 个表的 POC。有两个单独的视图(用于 2 个表) - 使用 DataGrID 和导航视图,DataGrID 加载来自该特定表的数据。到目前为止一切顺利。
现在,我正在实现一个存储库模式,以便基本的 CRUD 操作可以在这两个表中通用。目前,我在存储库中只有 SELEct ALL。这是我遵循的存储库模式的工作流程 (1) 我使用数据库优先的方法,并从数据库中搭建了这两个表。它给了我 3 个类(2 个用于表,1 个用于数据库上下文)
(2) 然后在网上阅读了几本书后,我创建了几个接口(IEntity 和 IRepository)
public interface IEntity
{
int id { get; }
}
public interface IRepository<TEntity> where TEntity:IEntity
{
IEnumerable<TEntity> List();
}
这是 Repository 类
public class Repository<TEntity> : IRepository<TEntity> where TEntity : class,IEntity
{
private Readonly DbContext _context;
private Readonly DbSet<TEntity> _dbSet;
public Repository()
{
}
public Repository(DbContext context)
{
this._context = context;
this._dbSet = context.Set<TEntity>();
}
public IEnumerable<TEntity> List()
{
return _dbSet.ToList();
}
}
到底什么是 TEntity,我应该如何在我的 viewmodel 中使用这个 Repository 类?我为此搜索了很多,据我所知,仅仅为数据库搭建脚手架是行不通的 - 必须在 dbContext 和 dbSet 的某处有一个映射。如果我在整个工作流程中遗漏了一些关键的东西,有人可以告诉我吗?提前致谢。
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
以上是大佬教程为你收集整理的WPF MVVM 存储库模式实现全部内容,希望文章能够帮你解决WPF MVVM 存储库模式实现所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。