尝试在程序包管理器控制台中使用“dotnet ef”命令。 PMC是cd到.csproj目录,仍然得到:
dotnet : Specify which project file to use because this 'C:\Users\PC-NAME\Source\Repos\TestProject\Test" contains more than one project file.
At line:1 char:1
dotnet ef migrations add TestMigration
+ CategoryInfo : NotSpecified: (Specify which p...e project file.:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
尝试使用-p / --p并指向.csproj文件/目录 - 仍然是同样的错误。
使用.NET CORE,MVC项目,最新的EF Core 2.0.2版本。
没有那么多有价值的数据 在互联网上关于这个问题,只是一个疯狂的猜测 dotnet ef命令正在寻找要运行的.exe文件。
希望得到帮助。
答案 0 :(得分:0)
您需要同时指定-p
和-s
:
dotnet ef ... -p ThisOne.csproj -s ThisOne.csproj
,其中
-p --project <PROJECT> The project to use.
-s --startup-project <PROJECT> The startup project to use.
答案 1 :(得分:0)
如果您的项目包含多个 .csproj 文件,您应该将它们移动到项目文件夹以外的另一个目录,然后再次运行命令行。
就我而言,我的项目文件夹中有两个 .csproj:CoreWebApplication.csproj 和 CoreWebApplication-backup.csproj,所以我移动了 CoreWebApplication-backup.csproj 并保留了 CoreWebApplication.csproj
dotnet ef ... -p CoreWebApplication.csproj -s CoreWebApplication.csproj