使用Elastic Database Client库,EF和Identity时找不到DbContext

时间:2017-05-16 21:25:19

标签: c# .net asp.net-mvc entity-framework azure

我正在尝试创建一个使用EntityFramework,Identity和Elastic Database Client的MVC WebApp。

我已经完成了Microsoft example here,其中大部分都是有道理的。但是,当我创建自己的MVC项目然后添加包含EF,Identity实体和Elastic Client的DAL项目时,我无法运行enable-migrations脚本。

我已确保我的程序包管理器控制台指向正确的DAL项目,并且我的上下文继承了DbContext。所以我有点难过看到这个错误信息:

PM> enable-migrations
No context type was found in the assembly 'LeadEngine.Data'.
PM> 

有没有人能够让这三个框架一起工作或知道为什么它找不到我的背景?

P.S。所有分片的代码几乎都是Microsoft示例的副本。

2 个答案:

答案 0 :(得分:1)

下载示例代码后,我发现示例中的上下文类型是泛型类型。我们知道泛型类型是一个开放类型,我们不能直接从泛型类型创建一个实例,直到我们向它附加一个类型参数。

  

在程序集“LeadEngine.Data”中找不到上下文类型。

要使用数据迁移,您可以重新创建一个新的上下文类型,该类型不能是通用类型。以下代码供您参考。

public class NewElasticScaleContext : ElasticScaleContext<int>
{
    public NewElasticScaleContext() : base("put connection string here")
    {
    }
}

答案 1 :(得分:0)