.NET5控制臺程序使用EF連接MYSQL數(shù)據(jù)庫的方法
1.使用nuget下載:
Microsoft.Extensions.Configuration.Json
Pomelo.EntityFrameworkCore.MySql
2.數(shù)據(jù)庫中創(chuàng)建好表:
CREATE TABLE `user2` ( `mid` int NOT NULL AUTO_INCREMENT, `uname` varchar(45) NOT NULL, `memo` varchar(200) DEFAULT NULL, PRIMARY KEY (`mid`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
3.新建實(shí)體類:
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace ConsoleApp1
{
public class user2
{
[Key] //主鍵
[DatabaseGenerated(DatabaseGeneratedOption.Identity)] //設(shè)置自增
public int mid { get; set; }
public string uname { get; set; }
public string memo { get; set; }
}
}
4.新建一個(gè)json配置文件:appsettings.json,設(shè)置為始終復(fù)制。
{
"ConnectionStrings": {
"Default": "Server=127.0.0.1;Database=wdb;charset=utf8;uid=root;pwd=some;"
}
}
5.新建DbContext
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using System.IO;
namespace ConsoleApp1
{
public class DefaultDbContext : DbContext
{
private IConfiguration configuration;
public DefaultDbContext()
{
configuration = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json").Build();
}
public DbSet<user2> user2 { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
string connStr = configuration.GetConnectionString("Default");
optionsBuilder.UseMySql(connStr, ServerVersion.AutoDetect(connStr),null);
}
}
}
6.使用
using ConsoleApp1;
using System;
using System.Linq;
namespace Net5ConsoleMySql
{
class Program
{
static void Main(string[] args)
{
try
{
DefaultDbContext context = new DefaultDbContext();
Random rnd = new Random();
string i = rnd.Next(1000, 9000).ToString();
user2 zhangsan = new user2 { uname = "張三" + i, memo = i };
user2 lisi = new user2 { uname = "李四" + i, memo = i };
context.user2.AddRange(zhangsan, lisi);
context.SaveChanges();
var users = context.user2.ToList();
foreach (var user in users)
{
Console.WriteLine($"{user.mid} {user.uname} {user.memo}");
}
}
catch (Exception ex)
{
Console.WriteLine($"EX: {ex.Message} ");
if (ex.InnerException != null)
{
Console.WriteLine($"INNER EX: {ex.InnerException.Message} ");
}
}
Console.WriteLine("Hello World!");
}
}
}
到此這篇關(guān)于.NET5控制臺程序使用EF連接MYSQL數(shù)據(jù)庫的方法的文章就介紹到這了,更多相關(guān).NET5使用EF連接MYSQL內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
asp.net使用JS+form表單Post和Get方式提交數(shù)據(jù)
今天小編就為大家分享一篇關(guān)于asp.net使用JS+form表單Post和Get方式提交數(shù)據(jù),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-01-01
在ASP.NET Core5.0中訪問HttpContext的方法步驟
這篇文章主要介紹了在ASP.NET Core5.0中訪問HttpContext的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
.net生成縮略圖及水印圖片時(shí)出現(xiàn)GDI+中發(fā)生一般性錯誤解決方法
這篇文章主要介紹了.net生成縮略圖及水印圖片時(shí)出現(xiàn)GDI+中發(fā)生一般性錯誤解決方法 ,需要的朋友可以參考下2014-11-11
asp.net內(nèi)置對象 Response對象使用介紹
這篇文章主要介紹了asp.net內(nèi)置對象:Response對象使用介紹,對Response對象感興趣的小伙伴們可以參考一下2015-11-11
Entity Framework Core使用控制臺程序生成數(shù)據(jù)庫表
這篇文章介紹了Entity Framework Core使用控制臺程序生成數(shù)據(jù)庫表的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03
輕量級ORM框架Dapper應(yīng)用之實(shí)現(xiàn)DTO
本文詳細(xì)講解了使用Dapper實(shí)現(xiàn)DTO的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03
ASP.NET MVC3的偽靜態(tài)實(shí)現(xiàn)代碼
最近使用asp.net MVC3開發(fā)B2C電子商務(wù)系統(tǒng),為了SEO的優(yōu)化工作,需要通過路由實(shí)現(xiàn)偽靜態(tài)URL,后續(xù)再根據(jù)需要生成真正的靜態(tài)頁面,不直接走路由訪問具體的頁面2011-12-12

