EntityFramework codefirst Enable-Migrations No context type was found in the assembly “MyApp.Web...
时间: 2024-05-06 08:18:57 浏览: 152
这个问题通常是因为Enable-Migrations命令无法找到DbContext类型所在的程序集。
首先,请确保您的DbContext类型位于正确的程序集中。如果您的DbContext类型位于“MyApp.Core”命名空间中,则应将“-ProjectName MyApp.Core”添加到Enable-Migrations命令中,以便命令可以找到该程序集。
例如,如果您的Enable-Migrations命令如下所示:
```
Enable-Migrations -ContextTypeName MyDbContext -ProjectName MyApp.Web
```
请尝试将其更改为:
```
Enable-Migrations -ContextTypeName MyDbContext -ProjectName MyApp.Core
```
请注意,-ProjectName选项应设置为包含DbContext类型的项目名称。
如果问题仍然存在,请确保DbContext类型已正确定义,并且在应用程序启动时已经初始化。您可以尝试在Global.asax.cs文件中添加以下代码:
```
protected void Application_Start()
{
Database.SetInitializer<MyDbContext>(null);
// your code here
}
```
这将禁用任何数据库初始化器,并允许DbContext在应用程序启动时被正确初始化。
阅读全文