情况:
在我的W10笔记本上出现了腐败之后,我不得不将系统恢复到之前的位置。我的所有软件都丢失了(包括VS 2K17,SQL SERVER,Office等)。我的所有项目文件都没有动过。
重新安装后,我尝试执行以下命令:
添加迁移20180209 -verbose
回过头来看看:
找到了多个启动项目。 使用项目'3 - Infrastructure \ Any.Gym.Infrastructure.Context'。 使用启动项目'3 - Infrastructure \ Any.Gym.Infrastructure.Context'。 开始构建...... 构建成功。 C:\ Program Files \ dotnet \ dotnet.exe exec --depsfile C:\ Users \ FILENGA \ Source \ repos \ Any.Gym \ Any.Gym.Infrastructure.Context \ bin \ Debug \ netcoreapp2.0 \ Any.Gym。 Infrastructure.Context.deps.json --additionalprobingpath C:\ Users \ FILENGA.nuget \ packages --additionalprobingpath“C:\ Program Files \ dotnet \ sdk \ NuGetFallbackFolder”--fx-version 2.0“C:\ Program Files \ dotnet \ sdk \ NuGetFallbackFolder \ microsoft.entityframeworkcore.tools \ 2.0.1 \ tools \ netcoreapp2.0 \ ef.dll“迁移添加20180209 --json --verbose --no-color --prefix-output --assembly C:\ Users \ FILENGA \ Source \ repos \ Any.Gym \ Any.Gym.Infrastructure.Context \ bin \ Debug \ netcoreapp2.0 \ Any.Gym.Infrastructure.Context.dll --startup-assembly C:\ Users \ FILENGA \ Source \ repos \ Any.Gym \ Any.Gym.Infrastructure.Context \ bin \ Debug \ netcoreapp2.0 \ Any.Gym.Infrastructure.Context.dll --project-dir C:\ Users \ FILENGA \ Source \ repos \ Any。 Gym \ Any.Gym.Infrastructure.Context \ --root-namespace Any.Gym.Infrastructure.Context
有什么想法吗?我已经在项目中删除了bin一个obj文件夹并重新执行以获得相同的响应
已经删除了“MIGRATION”文件夹。没有成功。
如果我切换到错误的startupproject,我会得到预期的消息:
在程序集“Any.Gym.API”中找不到DbContext。确保您使用的是正确的程序集,并且该类型既不是抽象的也不是通用的。
答案 0 :(得分:1)
解决。这是EF的一个问题。
参考: https://github.com/aspnet/EntityFrameworkCore/issues/10926 https://github.com/aspnet/EntityFrameworkCore/issues/10298
将此添加到Context类csproj:
<PropertyGroup>
<GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
</PropertyGroup>