热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

C#/.netEFCore链接Mysql

C#.netEFCore链接Mysql1.安装相关的NuGet的DLL包2.生成数据库的实体和EF的DBcontext对象3.在Startup.cs中添加配置1.安装相关的NuGe

C#/.net EF Core 链接 Mysql

    • 1. 安装相关的 NuGet 的 DLL 包
    • 2. 生成数据库的实体和 EF 的 DBcontext 对象
    • 3. 在 Startup.cs 中添加配置


1. 安装相关的 NuGet 的 DLL 包


开发环境:Win10 + VS2019
Mysql 服务器版本:8.0.24

Microsoft.EntityFrameworkCore.Tools
Microsoft.EntityFrameworkCore.Relational
Pomelo.EntityFrameworkCore.MySql

在这里插入图片描述
在这里插入图片描述

另两个一样


2. 生成数据库的实体和 EF 的 DBcontext 对象

在这里插入图片描述

在程序包控制台输入以下命令

Scaffold-DbContext "server=localhost;port=3306;user=user;password=password;database=student" -Provider "Pomelo.EntityFrameworkCore.MySql" -o Models -Context DBClassConext

3. 在 Startup.cs 中添加配置


将自动生成 DBClassConext 文件名替换下面的 YourDbContext

// This method gets called by the runtime. Use this method to add services to the container.// For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID&#61;398940public void ConfigureServices(IServiceCollection services){services.AddMvc();// 依赖注入services.AddSingleton<IStudentRepository, MockStudentRepository>();// Replace with your connection string.var connectionString &#61; "server&#61;localhost;user&#61;root;password&#61;root;database&#61;student";// Replace with your server version and type.// Use &#39;MariaDbServerVersion&#39; for MariaDB.// Alternatively, use &#39;ServerVersion.AutoDetect(connectionString)&#39;.// For common usages, see pull request #1233.var serverVersion &#61; new MySqlServerVersion(new Version(8, 0, 24));// Replace &#39;YourDbContext&#39; with the name of your own DbContext derived class.services.AddDbContextPool<DBClassConext>(dbContextOptions &#61;> dbContextOptions.UseMySql(connectionString, serverVersion).EnableSensitiveDataLogging() // These two calls are optional but help.EnableDetailedErrors() // with debugging (remove for production).);}

将 connectionString 放在配置文件中

在这里插入图片描述

private readonly IConfiguration _configuration;public Startup(IConfiguration configuration){_configuration &#61; configuration;}

var serverVersion &#61; new MySqlServerVersion(new Version(8, 0, 24));// Replace &#39;YourDbContext&#39; with the name of your own DbContext derived class.services.AddDbContextPool<DBClassConext>(dbContextOptions &#61;> dbContextOptions.UseMySql(_configuration.GetConnectionString("DBConnection"), serverVersion).EnableSensitiveDataLogging() // These two calls are optional but help.EnableDetailedErrors() // with debugging (remove for production).);

在 appsettings.json 中添加

在这里插入图片描述

"ConnectionStrings": {"DBConnection": "server&#61;localhost;user&#61;root;password&#61;root;database&#61;student"}

参考网址:
[1]: https://blog.csdn.net/weixin_44146294/article/details/110949332
[2]: https://github.com/PomeloFoundation/Pomelo.EntityFrameworkCore.MySql


推荐阅读
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 在Linux系统中避免安装MySQL的简易指南
    在Linux系统中避免安装MySQL的简易指南 ... [详细]
  • 本文详细介绍了如何在 Linux 系统上安装 JDK 1.8、MySQL 和 Redis,并提供了相应的环境配置和验证步骤。 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • javascript分页类支持页码格式
    前端时间因为项目需要,要对一个产品下所有的附属图片进行分页显示,没考虑ajax一张张请求,所以干脆一次性全部把图片out,然 ... [详细]
  • 本文详细介绍了如何使用Python中的smtplib库来发送带有附件的邮件,并提供了完整的代码示例。作者:多测师_王sir,时间:2020年5月20日 17:24,微信:15367499889,公司:上海多测师信息有限公司。 ... [详细]
  • php更新数据库字段的函数是,php更新数据库字段的函数是 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • Unity与MySQL连接过程中出现的新挑战及解决方案探析 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
author-avatar
用户89e44snpn5
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有