zoukankan      html  css  js  c++  java
  • ASP.NET Core 1.0 使用 MySQL for EF Core 1.0 (.NET Core 1.0)

    经过多天的项目设计实践,本来都几乎放弃使用 MySQL 去使用 MSSQL ,但几经周折还是在找到了在 .NET Core 中使用 MySQL 数据库的方法(官方的进度不敢恭维,现使用的是第三方库),在此分享一下。

    添加引用 Pomelo.EntityFrameworkCore.MySql ,使用 1.0.0 版本即可。

    2016/7/27 nele :这不是国外的,是国内的。https://github.com/PomeloFoundation,柚子基金会是微软mvp 郑逸笙创建的用于宣传.net core技术,其中已经开源了很多项目或者框架。

    2016/8/8 该库已经可以在 NuGet 中下载了。

    最后以往 Core First 该怎么用现在就怎么用。

    以下附上我的示例:

     1 public void ConfigureServices(IServiceCollection services)
     2         {
     3 
     4             // Add framework services.
     5             services.AddMvc();
     6 
     7             services.AddDbContext<DBContext>(options => options.UseMySql(Option.EntityContextSql));
     8 
     9             services.Configure<Microsoft.AspNetCore.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<DBContext> 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         }
  • 相关阅读:
    关键两招就解决Wampserver 打开localhost显示IIS7图片问题
    死磕!Windows下Apache+PHP+phpmyadmin的配置
    宝塔linux面板运行jsp文件的配置工作
    Python关于self用法重点分析
    Atom窗口切换和放大或者缩小
    容易掉坑的地方The value for the useBean class attribute XXX is invalid
    JS 之如何在插入元素时插在原有元素的前面而不是末尾
    ul或者ol中添加li元素
    页面右下角广告
    getAttribute与setAttribute
  • 原文地址:https://www.cnblogs.com/VicBilibily/p/5679353.html
Copyright © 2011-2022 走看看