IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> EF Core CodeFirst配置mysql数据库,及依赖注入方式基础学习 -> 正文阅读

[大数据]EF Core CodeFirst配置mysql数据库,及依赖注入方式基础学习

.net core 版本:3.1
mysql版本:5.6.28-mysql

1.批量映射数据库表

安装包:

Install-Package MySql.Data.EntityFrameworkCore
Install-Package Pomelo.EntityFrameworkCore.MySql
Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

打开nuget控制台,输入以下命令

Scaffold-DbContext -Connection “server=127.0.0.1;uid=root;pwd=123456;database=xxxx;” -Provider Pomelo.EntityFrameworkCore.MySql -OutputDir Model -ContextDir Db -Context DbContext -UseDatabaseNames -Force

详见:

https://blog.csdn.net/andy5520/article/details/106839384

2.创建基本的依赖注入方式

注释掉:

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            if (!optionsBuilder.IsConfigured)
            {
#warning To protect potentially sensitive information in your connection string, you should move it out of source code. You can avoid scaffolding the connection string by using the Name= syntax to read it from configuration - see https://go.microsoft.com/fwlink/?linkid=2131148. For more guidance on storing connection strings, see http://go.microsoft.com/fwlink/?LinkId=723263.
                optionsBuilder.UseMySql("server=127.0.0.1;uid=root;pwd=123456;database=xxxx", Microsoft.EntityFrameworkCore.ServerVersion.Parse("5.6.28-mysql"));
            }
        }

在Startup - ConfigureServices 中注入dbcontext,注意UseMySql ,不要写成UseMySQL

// 注入dbcontext

 services.AddDbContext<BookContext>(options =>
        {
            // MySqlConnection --appsetting
            options.UseMySql(Configuration.GetConnectionString("MySqlConnection"), Microsoft.EntityFrameworkCore.ServerVersion.Parse("5.6.28-mysql"));
        });

appsetting中添加数据库连接字符串:

//数据库连接字符串

 "ConnectionStrings": {
    "MySqlConnection": "Server=127.0.0.1;database=xxxx;uid=root;pwd=123456;"
  }

创建测试TestController

private readonly ILogger<TestController> _logger;
        private readonly BookContext _db;   //  注入dbcontext
        public TestController(ILogger<TestController> logger, BookContext bookContext)
        {
            _logger = logger;
            _db = bookContext;
        }
        /// <summary>
        /// 测试get
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public IEnumerable<pzkworkorder> Get()
        {
            List<pzkworkorder> data = new List<pzkworkorder>();
            data = _db.pzkworkorders.Where(p => p.WORKORDERNUMBER == "GD2021071700007").ToList();
            return data;
        }
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-02-01 20:41:02  更:2022-02-01 20:43:22 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 13:27:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码