ASP.NET Core 1.0 使用 MySQL for EF Core 1.0
程序员文章站
2022-06-22 13:38:29
经过多天的项目设计实践,本来都几乎放弃使用 MySQL 去使用 MSSQL ,但几经周折还是在国外找到了在 .NET Core 中使用 MySQL 数据库的方法(官方的进度不敢...
经过多天的项目设计实践,本来都几乎放弃使用 MySQL 去使用 MSSQL ,但几经周折还是在国外找到了在 .NET Core 中使用 MySQL 数据库的方法(官方的进度不敢恭维,现使用的是第三方库),在此分享一下。
首先,要配置一下 NuGet 程序包源,因为该包暂时还没发布到 NuGet 库中。
程序包源:https://www.myget.org/F/pomelo/api/v2/
然后添加引用 Pomelo.EntityFrameworkCore.MySql ,使用 1.0.0 版本即可。(据消息该包会在八月初可以在 NuGet源中找到)
最后以往 Core First 该怎么用现在就怎么用。
以下附上我的示例:
1 public void ConfigureServices(IServiceCollection services) 2 { 3 4 // Add framework services. 5 services.AddMvc(); 6 7 services.AddDbContext(options => options.UseMySql(Option.EntityContextSql)); 8 9 services.Configureaspnetcore.server.kestrel.kestrelserveroptions>(option => 10 { 11 option.UseHttps(Path.Combine(new DirectoryInfo(Directory.GetCurrentDirectory()).FullName, "cret.pfx"), "pw"); 12 }); 13 }
using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace DB { public class DBContext : DbContext { public DBContext(DbContextOptions options): base(options) { } //省略实体定义 private static readonly IServiceProvider _serviceProvider = new ServiceCollection().AddEntityFrameworkMySql().BuildServiceProvider(); protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { base.OnConfiguring(optionsBuilder); optionsBuilder.UseInternalServiceProvider(_serviceProvider).UseMySql(Option.EntityContextSql); } protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); } } }
1 public static string EntityContextSql 2 { 3 get 4 { 5 return string.Format("Data Source={0};port={1};user id={2};password={3};database={4};Charset=utf8;", EntityConfig.dataSource, EntityConfig.port, EntityConfig.id, EntityConfig.pw, EntityConfig.db); 6 } 7 }
推荐阅读
-
ASP.NET Core 1.0 部署 HTTPS(.NET Core 1.0)
-
ASP.NET Core 1.0实现邮件发送功能
-
ASP.NET Core 1.0 部署 HTTPS (.NET Core 1.0)
-
ASP.NET Core使用EF Core操作MySql数据库
-
使用Asp.Net Core MVC 开发项目实践[第四篇:基于EF Core的扩展2]
-
使用IDbCommandInterceptor解决EF-CORE-3.x-使用MYSQL时,未正常的生成LIKE查询语句
-
EF Core 2.0使用MsSql/Mysql实现DB First和Code First
-
asp.net core webapi 使用ef 对mysql进行增删改查,并生成Docker镜像构建容器运行
-
OpenID Connect Core 1.0(五)使用授权码流验证(下)
-
使用EF Core+CodeFirst建立ASP.NET Core MVC项目