Con*_*ell 2 entity-framework-core ef-core-3.1
我有一个带有数据访问层的 ASP.NET Core 项目,使用 EF Core 3.1.8 和 3.1.8 版的 cli 工具。表示层和数据访问层在不同的项目中。要在 cli 中运行 EF 命令,我打开开发人员命令提示符,导航到包含数据访问层的目录并运行命令,例如
dotnet ef migrations add MyMigrationName --startup-project ../Site/Site.csproj
Run Code Online (Sandbox Code Playgroud)
或者
dotnet ef database update --startup-project ../Site/Site.csproj
Run Code Online (Sandbox Code Playgroud)
Site在这里只是一个占位符。实际项目名称较长,--startup-project每次想运行命令时都提供参数不方便。有没有我可以配置的地方,以便我可以更简洁地运行命令dotnet ef database update?
创建一个名为ef.cmd数据访问层目录的文件,内容如下:
@dotnet ef --startup-project ..\Site %*
Run Code Online (Sandbox Code Playgroud)
然后你可以使用:
ef migrations add MyMigrationName
Run Code Online (Sandbox Code Playgroud)
或者
ef database update
Run Code Online (Sandbox Code Playgroud)
为完整起见,另一种选择是使用响应文件。这并不那么简单,但是当您有多组选项时会很有用。(例如对于多个 DbContexts)
创建一个名称类似于identity.rsp以下内容的文件。
--startup-project=..\Site
--context=IdentityContext
Run Code Online (Sandbox Code Playgroud)
并像这样使用它。
--startup-project=..\Site
--context=IdentityContext
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
159 次 |
| 最近记录: |