在Package Manager Console中运行命令enable-migrations时出现此错误:
在程序集'Vidly'中找不到上下文类型
我正在使用Visual Studio 2017.如何解决?
答案 0 :(得分:9)
要解决此问题,请参阅以下步骤。
为DbContext引用添加此命名空间 System.Data.Entity
using System.Data.Entity;
namespace Vidly.Models
{
public class MyDBContext:DbContext
{
public MyDBContext()
{
}
public DbSet<Customer> Customers { get; set; } // My domain models
public DbSet<Movie> Movies { get; set; }// My domain models
}
}
现在打开包管理器控制台并输入以下命令以启用 迁移。
enable-migrations -contexttypename MyDBContext (MyDBContext是我们在step1中创建的类的名称)
希望这会有所帮助:)
答案 1 :(得分:3)
确保您已在程序包管理器控制台中设置了默认项目,该项目位于顶部标签处,并带有下拉列表。此项目应包含实体框架上下文。
您可以查看此post以查找默认项目下拉列表的位置。
最后你的代码应该像这样,
Enable-Migrations -ProjectName MyContextProjectNameHere -StartUpProjectName MyStartUpProjectNameHere -Verbose
希望有所帮助:)
答案 2 :(得分:0)
我几次遇到了这个问题,就我而言,我
这为我解决了问题
答案 3 :(得分:0)
请添加包:
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.7" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.7" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.7">
在 DataLayer .csproj
项目中
接着:
请安装在包下:
1) Install-Package Microsoft.EntityFrameworkCore.Tools -Version 5.0.7
2) Install-Package Microsoft.AspNetCore.Razor.Design
3) Add-Migrations initialDatabase
Microsoft.AspNetCore.Razor.Design
在 webapi 项目中。
see my project