Asp.Net Core链接Mysql数据库
一、新建一个Asp.Net Core WebMVC程序
添加nuget包 Mysql.Data

二、新建一个UserContext类
下面代码中的UserInfo是我自己建的一个实体,里面有俩字段:host和name.数据类型都是string
MysqlConnection 和MysqlCommand在MySql.Data.MySqlClient命名空间下;
public class UserContext
{
public string ConnectionString { get; set; } //实例化时获得MYSQLl链接字符串
public UserContext(string connectionString)
{
this.ConnectionString = connectionString;
} /// <summary>
/// MySqlConnection 是ADO.NET中Connection对象的Mysql版本
/// 这里是通过读取appsetting.json中的链接字符串打开一个mysql的链接
/// </summary>
/// <returns></returns>
private MySqlConnection GetConnection()
{ return new MySqlConnection(ConnectionString);
} public List<UserInfo> GetAllUser()
{
List<UserInfo> list = new List<UserInfo>();
///通过connection对象打开一个链接管道
using (MySqlConnection connection = GetConnection())
{
//打开管道
connection.Open();
//MySqlCommand是ADO.NET Command对象的mysql版本,这里是声明一个操作对象来执行SQL
MySqlCommand comand = new MySqlCommand("select host,user from mysql.user", connection);
//使用Reader对象对上面SQL执行的返回结果进行读取
using (MySqlDataReader reader = comand.ExecuteReader())
{
while (reader.Read())
{
list.Add(new UserInfo { Host = reader.GetString("host") });
}
}
}
return list;
} }
三、在StartUp.cs中注入UserContext
Dev是一个我在appsetting.json配置文件中的一个节点,下面会写。
用Configuration.GetConnectionString会自动读取配置文件的ConnectionStrings节点
services.Add(new ServiceDescriptor(typeof(UserContext), new UserContext(Configuration.GetConnectionString("Dev"))));

四、在配置文件中插入链接字符串

五、启动程序
在HomeController中获取一下上面写的数据
通过上面写的sql我们可以拿到数据库中所有的用户信息

欢迎指正
Asp.Net Core链接Mysql数据库的更多相关文章
- ASP.NET Core使用EF Core操作MySql数据库
ASP.NET Core操作MySql数据库, 这样整套环境都可以布署在Linux上 使用微软的 Microsoft.EntityFrameworkCore(2.1.4) 和MySql出的 MySql ...
- Visual Studio Code和Docker开发asp.net core和mysql应用
Visual Studio Code和Docker开发asp.net core和mysql应用 .net猿遇到了小鲸鱼,觉得越来越兴奋.本来.net猿只是在透过家里那田子窗看外面的世界,但是看着海峡对 ...
- ASP.NET Core Identity自定义数据库结构和完全使用Dapper而非EntityFramework Core
前言 原本本节内容是不存在的,出于有几个人问到了我:我想使用ASP.NET Core Identity,但是我又不想使用默认生成的数据库表,想自定义一套,我想要使用ASP.NE Core Identi ...
- Python学习笔记9-Python 链接MySql数据库
Python 链接MySql数据库,方法很简单: 首先需要先 安装一个MySql链接插件:MySQL-python-1.2.3.win-amd64-py2.7.exe 下载地址:http://dev. ...
- Tomcat通过JNDI方式链接MySql数据库
原文:Tomcat通过JNDI方式链接MySql数据库 拷贝MySQL的JDBC驱动到Tomcat的lib路径下 配置全局数据源或者单个Web应用的局部数据源 局部数据源 在Tomcat的conf/C ...
- C# 链接MySql数据库
C# 链接MySql数据库只得注意的几点: 1.C#链接MySql数据库要在网上下载一个mysql-connector-net-6.0.4-noinstall.rar 这里面放的都是一堆dll .将 ...
- 写给小白的JAVA链接MySQL数据库的步骤(JDBC):
作为复习总结的笔记,我罗列了几个jdbc步骤,后边举个简单的例子,其中的try块请读者自行处理. /* * 1.下载驱动包:com.mysql.jdbc.Driver;网上很多下载资源,自己找度娘,此 ...
- Java链接MySQL数据库的用配置文件和不用配置文件的代码
1.利用配置文件(db.properties)链接MySQL数据库 package tool; import java.io.FileInputStream;import java.sql.Conne ...
- SQLServer 远程链接MySql数据库详解
SQLServer 远程链接MySql数据库详解 by:授客 QQ:1033553122 测试环境: Microsoft Windows XP Professional 版本2000 Service ...
随机推荐
- delphi 获取可执行文件的当前路径
在Delphi SysUtils 单元中有 ExtractFileDir 与 ExtractFilePath两个类似的函数, 两个函数有以下的区别: ExtractFilePath 传回值的最後一个字 ...
- PHP 多图片上传实例demo
upload.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...
- Timeout occurred while waiting for latch: class 'COLUMNSTORE_ROWGROUP_COLLECTION'
今天发现线上数据库主从延迟严重: SELECT ag.name AS ag_name, ar.replica_server_name AS ag_replica_server, dr_state.da ...
- mysql中通过my.cnf设置默认字符集utf-8
选项配置 配置文件路径:/full/path/mysql/bin/my.cnf (默认为/etc/my.cnf ) [client] default-character-set=utf8 [mysql ...
- QTimer掉坑出坑过程
最近遇到一个问题,就是关于QTimer设置了10ms,结果不生效,很头疼啊,查了快一天了,终于知道为什么了? 先说下QTimer的使用方法: m_delayHideTimer这是QTimer的对象. ...
- SVD singular value decomposition
SVD singular value decomposition https://en.wikipedia.org/wiki/Singular_value_decomposition 奇异值分解在统计 ...
- tp 查询数据库时报错 A non well formed numeric value encountered
在database.php中配置或修改 'datetime_format' => false,
- 使用Vue-cli脚手架
使用vue-cli脚手架开发vue项目,有以下好处: (1)成熟的Vue项目架构设计. (2)本地测试服务器(热更新). (3)集成打包上线方案. Vue-cli系统要求: Node.js(>= ...
- jemter 使用if控制器,选择需要的内容
背景:需要根据人员传入的变量,来选择运行的环境,调用不同的参数,进行拼接,使用到if控制器 取到的数据,调用的就是test1的数据
- luogu P2617 Dynamic Rankings(分块,n <= 1e4)
嘟嘟嘟 带修改区间第k大. 然而某谷把数据扩大到了1e5,所以用分块现在只能得50分. 分块怎么做呢?很暴力的. 基本思想还是块内有序,块外暴力统计. 对于修改,直接重排修改的数所在块,时间复杂度O( ...