.net core EF core 搭建常见问题

问题

win7 下新建 ASP.NET Core web application (.Net Core) + EF Core  启动抛出异常

Could not load type 'Microsoft.Extensions.DependencyInjection.ServiceCollectionExtensions'

解决

在win7下建议 使用ASP.NET Core web application (.Net Framework)  + EF6.0 (非EF Core)如下


.net core EF core 搭建常见问题_第1张图片



.net core EF core 搭建常见问题_第2张图片

配置dbcontext注入

public class DataAccessMssqlContent : DbContext

{

public DataAccessMssqlContent(string connString) : base(connString)

{

}

}


public class DataAccessMssqlContentFactory : IDbContextFactory{

public DataAccessMssqlContent Create()

{

return new DataAccessMssqlContent("Server=(localdb)\\mssqllocaldb;Database=JKGisDB;Trusted_Connection=True;MultipleActiveResultSets=true");

}

}


.net core EF core 搭建常见问题_第3张图片

win10下 vs2015  搭建 .net core +ef core

.net core +ef core 建议在win10或者win8 系统下使用。 在win7下使用 引入ef core 报错服务无法启动

新建时选择 ASP.NET Core web application (.Net Core)

.net core EF core 搭建常见问题_第4张图片

数据库连接使用框架:

==========sqlserver====

Microsoft.EntityFrameworkCore   测试版本1.0.1

Microsoft.EntityFrameworkCore.Design 测试版本1.0.1

Microsoft.EntityFrameworkCore.SqlServer.Design 测试版本1.0.1

Microsoft.EntityFrameworkCore.SqlServer      测试版本1.0.1

==========mysql====

SapientGuardian.EntityFrameworkCore.MySql 测试版本

DbContext注入配置

在 Startup.cs 中的 public void ConfigureServices(IServiceCollection services) 发放中增加

sqlserver dbcontext注入

//services.AddDbContext(options => options.UseSqlServer(""));

mysq dbcontext 注入 注入前增加引用 //using MySQL.Data.Entity.Extensions;

//services.AddDbContext(options => //options.UseMySQL("",b=>b.MigrationsAssembly("JK.GisManager")));


 dbContext 格式

namespace DataAccessMysql{    

public class DomainModelMysqlContext : DbContext    {   

     public DomainModelMysqlContext(DbContextOptionsoptions) : base(options) {        }   

     public DbSetDataEventRecords { get; set; }    

    public DbSetSourceInfos { get; set; }

}

}

参考实例:https://github.com/damienbod/AspNet5MultipleProject

你可能感兴趣的:(.net core EF core 搭建常见问题)