经过大量研究和反复试验,这是我发现可行的步骤:
环境:
- 视窗 10
- Postgres 13
- ASP.NET 核心 5
创建步骤:
- 在 Postgress 13 上创建身份数据库。
GRANT ALL ON DATABASE dbname TO user;
- 使用个人授权创建一个面向 .NET 5 (net5.0) 的 ASP.NET Core 项目。
- 将连接字符串添加到
appsetting.json
文件中。 - 添加
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="5.0.2" />
到 .csproj 文件。 - 如果包退出以使用 Sqlite - 将其删除。
- 重建解决方案。
- 在 Startup.cs 中,更改
.UsingSqlServer
为,Npgsql
. - 保存并重建。
- 在开发人员 PowerShell 中运行:
dotnet-ef migrations remove
如果没有错误,则运行:dotnet-ef migrations add InitialIdent
如果没有错误运行:- 'dotnet-ef' 数据库更新`
现在您的 Postgres 数据库中应该有身份表。