NopCommerce架构分析-数据持久层

NopCommerce使用Entity Framework (EF)实现数据持久化,采用Code-First方法,所有的核心实体类都在Nop.Core中定义。

得益于分层结构,NopCommerce提供两种数据库作为数据存储媒介,Microsoft SQL Server和Microsoft SQL Server Compact,所以提供2个Provider,如下图:

BaseDataProviderManager是一个Provider工厂,根据配置信息,决定使用那个Provider。

 NopCommerce扩展了Entity Framework的DbContext:NopObjectContext,和支持泛型的数据仓储EfRepository,如下图:

这两个类没有什么特殊的,不再赘述。

根据NopCommerce官方的说法,由于.NET Core 中EntityFrameworkCore2.0还没有很好的延时加载机制,所以暂时继续使用EntityFramework6.0,后续的新版本估计会全面使用.NET Core,也会使用EntityFrameworkCore替代掉EF。

原文地址:https://www.cnblogs.com/tingqianzhu/p/8583791.html