Repository pattern i假定实体实现

Repository pattern i假定实体实现,repository-pattern,Repository Pattern,我使用Repository和UnitOfWork模式来保存解耦的代码,并实现一种简单的方法来测试我的应用程序 内部实现首先使用EntityFramerowk和DB,一切正常 明天,我可能想使用其他一些具体的存储库实现,比如文件系统,而不是数据库,所以一些存储库方法,比如Find或Delete,可能很难实现,因为我的实体没有实现任何关于主键等的内容。这意味着我对存储库的实体研究应该查找与T对象参数匹配的所有字段 那么,在一些接口实现中强制使用我的实体是否是一种良好的做法?例如: 有没有关于这方面的

我使用Repository和UnitOfWork模式来保存解耦的代码,并实现一种简单的方法来测试我的应用程序

内部实现首先使用EntityFramerowk和DB,一切正常

明天,我可能想使用其他一些具体的存储库实现,比如文件系统,而不是数据库,所以一些存储库方法,比如Find或Delete,可能很难实现,因为我的实体没有实现任何关于主键等的内容。这意味着我对存储库的实体研究应该查找与T对象参数匹配的所有字段

那么,在一些接口实现中强制使用我的实体是否是一种良好的做法?例如:

有没有关于这方面的可用示例或教程

一些存储库方法,比如Find、Delete,可能很难实现,因为我的实体并没有实现任何关于主外键等的功能。这意味着我对存储库的实体研究应该查找与T对象参数匹配的所有字段

这就是不实现存储库的方法。存储库接口(契约)应该不知道底层的实现细节,比如实体框架。只有这样,您才能拥有不同的存储库实现,并实现关注点的分离。此外,使用存储库的测试代码不应涉及EF或db