entity-framework-core - 配置 EF Core CLI 参数
问题描述
我有一个带有数据访问层的 ASP.NET Core 项目,它使用 EF Core 3.1.8 并使用 cli 工具的 3.1.8 版本。表示层和数据访问层在不同的项目中。要在 cli 中运行 EF 命令,我打开一个开发人员命令提示符,导航到包含数据访问层的目录并运行一个命令,例如
dotnet ef migrations add MyMigrationName --startup-project ../Site/Site.csproj
或者
dotnet ef database update --startup-project ../Site/Site.csproj
Site
在这里只是一个占位符。实际项目名称较长,--startup-project
每次运行命令时都提供参数不方便。有没有可以配置的地方,以便我可以更简洁地运行命令dotnet ef database update
?
解决方案
ef.cmd
在数据访问层目录中创建一个名为的文件,其内容如下:
@dotnet ef --startup-project ..\Site %*
然后你可以使用:
ef migrations add MyMigrationName
或者
ef database update
为了完整起见,另一种选择是使用响应文件。这并不简单,但当您有多组选项时会很有用。(例如对于多个 DbContexts)
创建一个类似identity.rsp
以下内容的文件。
--startup-project=..\Site
--context=IdentityContext
并像这样使用它。
dotnet ef database update @identity.rsp
推荐阅读
- r - 将数据分配给 R 中最近的采样点
- python - python elemnttree把我扔“杀”
- java - 使用 JUnit 测试 Maven 插件并使用 Test-POM
- r - 如何设置正在运行的 R flexdashboard 中的列数
- java - 从 MAC 终端运行时的 .sh 文件工作正常,但从 java Java.lang.Runtime.exec() 运行时抛出错误,如找不到命令
- java - 无法使用 Hibernate 从 PostgreSQL 获取 BLOB 字段
- reactjs - 将 React 应用程序部署到 Azure 应用程序服务时访问环境变量
- sql - 像百事可乐这样的 SQL SERVER PIVOT 低于一年,然后是几个月等等。(请参阅附图以获得清晰的想法)
- javascript - 使用 window.open(
,'_自己) - android - 无法在本地连接 Android 中的 web-socket 客户端