迁移配置类型' ProjectName.Configuration'未在程序集中找到' ProjectName'

时间:2018-02-07 14:55:04

标签: c# .net entity-framework ef-code-first ef-migrations

我尝试在我的VS项目上启用迁移,之前使用过相同的上下文和迁移配置,但是当我在PMC中输入Enable-Migrations命令时,我不断收到此错误:

The migrations configuration type 'ProjectName.Configuration' was not be found in the assembly 'ProjectName'.

我只有一个上下文,项目尚未重命名,我正在运行EF 6.2.0,并安装了最新版本的VS.

这是我的背景之首:

using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ProjectName.Objects;

namespace ProjectName
{
    public class Context :DbContext
    {
        public Context() : base("name=DBConnect")
        {
            Configuration.ProxyCreationEnabled = false;
        }

        public DbSet<MyDbSets> MyDbSet{ get; set; }

        // ...
    }
}
到目前为止,基于其他类似的Q&amp; As:

采取了步骤
  • 重新启动VS
  • 检查我的默认项目是否正确
  • 删除了VS和SSMS中的迁移文件夹
  • 在我的项目中取消并重新安装EF
  • 检查装配是否未签名

我还尝试了以下命令:

Enable-Migrations -ProjectName ProjectName -StartUpProjectName ProjectName -Verbose

Enable-Migrations -EnableAutomaticMigrations -ContextTypeName ProjectName .Context -ContextProjectName ProjectName -ContextAssemblyName ProjectName 

后者 创建了一个与我的其他工作配置相同的Migrations文件夹和Configuration.cs,但产生了以下错误:

The type 'ProjectName.Migrations.Configuration' does not inherit from 'System.Data.Entity.Migrations.DbMigrationsConfiguration'. Migrations configuration types must extend from 'System.Data.Entity.Migrations.DbMigrationsConfiguration'.

如果后面跟着我试过的任何Add-Migration命令,请执行以下操作:

Add-Migration -ProjectName ProjectName -ConfigurationTypeName ProjectName.Migrations.Configuration.cs Initial

Add-Migration -Configuration ProjectName.Migrations.Configuration.cs Initial

它会抛出

The migrations configuration type 'ProjectName.Migrations.Configuration.cs' was not be found in the assembly 'ProjectName'.

尽管它在那里!我已经四倍检查配置文件是否在正确的命名空间下,以及数据库上下文是否正确地从DbContext继承,但没有骰子。

我不知所措,尽管几乎完全相同,我的其他任何项目都没有遇到过这个问题。如果有人知道还有什么我可以尝试解决这个问题,非常感谢,谢谢!

0 个答案:

没有答案