在我工作的公司,我被命令更新旧的MVC应用程序并实现SQL数据库的存储库模式.我使用Entity Framework Database-First创建了数据库的上下文,并获得了23个实体.
我是否需要为每个实体创建存储库或为上下文实现通用存储库?我问这个是因为我在搜索互联网时发现了以下内容:
每个域一个存储库
您应该将存储库视为内存中域对象的集合.如果您正在构建名为Vega的应用程序,则不应具有如下所示的存储库:
public class VegaRepository {}
通用存储库是否适用于Entity Framework Database-First?这是因为我在搜索互联网时发现了以下内容:
实体框架
请注意,只有在首先使用代码映射的POCO时,存储库模式才有用.否则你只需要用实体打破抽象(=存储库模式不是很有用).如果您想为自己生成基础,可以按照本文进行操作.