推荐项目结构示例
-
用户界面层(如 ASP.NET Core Web API)
- 引用应用层
- 不安装
Microsoft.EntityFrameworkCore.Tools
-
应用层 (如
Application项目)- 定义接口、DTO、应用服务
- 不安装 EF Core 相关包
-
领域层 (如
Domain项目)- 包含实体、值对象、聚合、领域服务
- 不安装 EF Core 工具或运行时包(避免技术细节污染业务逻辑)
-
基础设施层 (如
Infrastructure项目)- 实现领域接口、配置 EF Core、连接数据库
- 安装以下包 (根据需要):
Microsoft.EntityFrameworkCoreMicrosoft.EntityFrameworkCore.ToolsMicrosoft.EntityFrameworkCore.SqlServer(或其他数据库提供程序)- PostgreSQL:
Npgsql.EntityFrameworkCore.PostgreSQL - MySQL:
Pomelo.EntityFrameworkCore.MySql - SqlServer:
Microsoft.EntityFrameworkCore.SqlServer
- PostgreSQL: