其中SqlSugar,也可以是EFcore,或者Dapper,或者其他ORM框架。
創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供鳳凰網(wǎng)站建設(shè)、鳳凰做網(wǎng)站、鳳凰網(wǎng)站設(shè)計(jì)、鳳凰網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、鳳凰企業(yè)網(wǎng)站模板建站服務(wù),10多年鳳凰做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。其中mysql,也可以是SqlServer,或者oracle,或者其他數(shù)據(jù)庫(kù)類型。
1.首先使用vs2022建立.net6 web api
2.增加SqlSugar和MySQL依賴項(xiàng)。
Newtonsoft.Json是序列化
3. 根據(jù)官網(wǎng)說明進(jìn)行注入
SqlSugar.IOC/依賴注入 - SqlSugar 5x - .NET果糖網(wǎng)
using SqlSugar;
namespace demoAPI.Db
{
public static class SqlsugarSetup
{
public static void AddSqlsugarSetup(this IServiceCollection services, IConfiguration configuration,
string dbName = "ConnectString")
{
SqlSugarScope sqlSugar = new SqlSugarScope(new ConnectionConfig()
{
DbType = SqlSugar.DbType.MySql,
ConnectionString = configuration[dbName],
IsAutoCloseConnection = true,
},
db =>{
//單例參數(shù)配置,所有上下文生效
db.Aop.OnLogExecuting = (sql, pars) =>{
Console.WriteLine(sql);//輸出sql
};
//技巧:拿到非ORM注入對(duì)象
//services.GetService<注入對(duì)象>();
});
services.AddSingleton(sqlSugar);//這邊是SqlSugarScope用AddSingleton
}
}
}
注入操作
builder.Services.AddSqlsugarSetup(builder.Configuration);
其中ConnectString就是MySQL數(shù)據(jù)庫(kù)的連接字符串
"ConnectString": "Server=127.0.0.1;Port=3306;Database=test;Uid=root;Pwd=123456;"
4. 建立實(shí)體類
這個(gè)要和數(shù)據(jù)庫(kù)的一致?
注意: 建立實(shí)體類,可以使用DBfirst,也可以使用codefirst,也可以手動(dòng),最終只要有實(shí)體就行了。
4. 建立測(cè)試控制類
using demoAPI.Model;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
namespace demoAPI.Controllers
{
[ApiController]
[Route("api/[controller]/[action]")]
public class testAPI : ControllerBase
{
private readonly ISqlSugarClient db;
public testAPI(ISqlSugarClient db)
{
this.db = db;
}
[HttpGet]
public void Get()
{
var a = db.Queryable().ToList();
var b = db.Queryable().Where(a =>a.id == "22").ToList();
}
}
}
5.運(yùn)行代碼,看結(jié)果
點(diǎn)擊第一個(gè)執(zhí)行。?
拓展:數(shù)據(jù)返回類型
對(duì)webapi操作的時(shí)候,會(huì)有返回的數(shù)據(jù),返回的數(shù)據(jù)各有不同,有集合,有單體,有數(shù)值,有字節(jié)流等等方式。也可以對(duì)他們進(jìn)行統(tǒng)一的封裝,進(jìn)行標(biāo)識(shí),后面將會(huì)寫,下面的代碼,目前可以進(jìn)行參考一下。
using demoAPI.Model;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
namespace demoAPI.Controllers
{
[ApiController]
[Route("api/[controller]/[action]")]
public class testAPI : ControllerBase
{
private readonly ISqlSugarClient db;
public testAPI(ISqlSugarClient db)
{
this.db = db;
}
[HttpGet]
public void Get()
{
var a = db.Queryable().ToList();
var b = db.Queryable().Where(a =>a.id == "22").ToList();
}
////// 返回所有數(shù)據(jù)
/// /// [HttpGet]
public async Task>>AAA()
{
return await db.Queryable().ToListAsync();
}
////// 返回單條數(shù)據(jù)
/// /// [HttpGet("{id}")]
public async Task>>AAA(string id)
{
var data = await db.Queryable().Where(s =>s.id == id).ToListAsync();
return data;
}
////// 返回體單個(gè)數(shù)值
/// /// [HttpGet]
public ActionResultB( )
{
return "12231";
}
////// 返回狀態(tài)碼
/// /// [HttpGet]
public IActionResult B1()
{
return NotFound();
}
}
}
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧