ASP.NET WEB API通过SugarSql连接MySQL数据库

注意:VS2022企业版可以,社区版可能存在问题。实体名称和字段和数据库中的要一致。

1、创建项目,安装SqlSugarCore、Pomelo.EntityFrameworkCore.MySql插件

2、文件结构

2、appsettings.json

{

"Logging": {

"LogLevel": {

"Default": "Information",

"Microsoft.AspNetCore": "Warning"

}

},

"AllowedHosts": "*",

"ConnectionString": "Server=127.0.0.1;port=3306;database=blog_db;uid=root;pwd=123456;"

}

3、SqlSugarSetup.cs

using SqlSugar;

namespace MySqlApp.Db

{

public static class SqlSugarSetup

{

public static void AddSqlSugarSetup(this IServiceCollection services, IConfiguration configuration, string dbName= "ConnectionString")

{

SqlSugarScope sqlSugar = new SqlSugarScope(new ConnectionConfig()

{

DbType = SqlSugar.DbType.MySql,

ConnectionString = configuration[dbName],

IsAutoCloseConnection = true,

},

db =>

{

db.Aop.OnLogExecuting = (sql, pars) =>

{

Console.WriteLine(sql);

};

});

services.AddSingleton(sqlSugar);

}

}

}

4、Program.cs

builder.Services.AddSqlSugarSetup(builder.Configuration);

5、blog_type.cs

namespace MySqlApp.Model

{

public class blog_type

{

public int type_id { get; set; }

public string type_name { get; set; } = string.Empty;

}

}

6、BlogTypeController.cs

using Microsoft.AspNetCore.Http;

using Microsoft.AspNetCore.Mvc;

using MySqlApp.Model;

using SqlSugar;

namespace MySqlApp.Controllers

{

Route("api/\[controller\]")

ApiController

public class BlogTypeController : ControllerBase

{

private readonly ISqlSugarClient _db;

public BlogTypeController(ISqlSugarClient db) {

_db = db;

}

HttpGet

public IActionResult Get()

{

var a = _db.Queryable<blog_type>().ToList();

return Ok(a);

}

}

}

7、运行效果

相关推荐
2501_90120053几秒前
Less如何优化CSS文件大小_利用压缩配置去除冗余样式
jvm·数据库·python
YL200404261 分钟前
MySQL-进阶篇-索引
数据库·mysql
庞轩px2 分钟前
Redis工具类重构——从臃肿到优雅的门面模式实践
数据库·redis·设计模式·重构·门面模式·可扩展性·可维护性
m0_609160493 分钟前
SQL如何通过窗口函数简化年度报表逻辑_SQL开发技巧
jvm·数据库·python
m0_733565465 分钟前
JavaScript中原型链的查找机制与终点null的意义
jvm·数据库·python
weixin_444012935 分钟前
HTML怎么区分正文与广告_HTML aside与广告位语义【技巧】
jvm·数据库·python
zjy277776 分钟前
Go语言如何用定时器_Go语言time.Ticker定时器教程【详解】
jvm·数据库·python
CLX05056 分钟前
Layui弹出层layer.open如何实现窗口在指定时间后自动最大化
jvm·数据库·python
m0_624578596 分钟前
如何在Bootstrap中制作一个响应式的团队介绍页面
jvm·数据库·python
心流时间7 分钟前
读书笔记-PostgreSQL实战
数据库·postgresql