Visual
EF Core 支持的数据库
官方针对不同数据库提供了不同的 Database Providers。
- MSSQL LocalDB
- PostgreSQL
- MySQL/MariaDB
- Oracle
- DB2
- SQLite
- In Memory
- …
DbContext
EF Core 使用 DbContext 操作数据库。
- 一个 DbContext 类对应一个数据库
- 一个 DbSet
集合对应数据库中的一张表
迁移
可以使用 dotnet cli,也可以使用 VS 内置的 Package Manage Console。
- Add-Migration Xxxx
- Update-Database
注:Update-Database -Verbose
更新数据库时带 Verbose 参数,可以看到更新时的细节。
HomeController、 IRepository
- InMemoryRepository 实现了 IRepository
接口 - HomeController 依赖于 IRepository
接口,不依赖具体实现类 - HomeController 这个高级别的模块不依赖于 InMemoryRepository 这个低级别的模块
- 高级别的模块应该依赖于抽象