如何在EF 7 ASP.NET Core中使用迁移的dbcontext?

时间:2016-12-27 07:18:50

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

我已将网络系统从asp.net核心RC1迁移到1.0.0-final。我正在使用Entity框架Core。 在任何使用上下文的方法中使用DB(sqlserver 2012)时都会出现问题。这是错误:

  

尝试在创建模型时使用模型。一个   DbContext实例不能以任何方式在OnModelCreating中使用   它利用了正在创建的模型。

我确定连接字符串是正确的(在rc1中工作) 该异常由一些EF代码处理,但所有实体都为null,因此在使用上下文时它们会抛出错误(没有处理这个可能的错误)

这是' context.Model'的堆栈跟踪。错误

at Microsoft.EntityFrameworkCore.Internal.DbContextServices.CreateModel()
   at Microsoft.EntityFrameworkCore.Internal.LazyRef`1.get_Value()
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceProvider.<>c__DisplayClass16_0.<RealizeService>b__0(ServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService[T](IServiceProvider provider)
   at Microsoft.EntityFrameworkCore.DbContext.get_Model()

这是我的上下文类

public partial class gestionContext : DbContext
    {
    public gestionContext(DbContextOptions<gestionContext> options) : base(options)
    {
    }



    protected override void OnConfiguring(DbContextOptionsBuilder options)
    {
    }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {

        modelBuilder.Entity<Aux_ExampleEntity>(entity =>
        {

            entity.Property(e => e.code)
                .IsRequired()
                .HasMaxLength(13)
                .HasColumnType("char");


        });


        //more fluent api here

  }

这是启动类

中与上下文相关的一段代码
services.AddDbContext<gestionContext>(options =>
               options.UseSqlServer("noparametrizedconnectionstring"));

任何帮助都将是apreciated

0 个答案:

没有答案