.Net 6 WebApi+Oracle+Dapper+Log4net

1、创建.Net WebApi

1、打开Visual Studio 2022,创建新项目

2、选择项目模板,ASP.NET Core Web API

3、项目命名 

 4、选择框架“.NET6.0”

 5、新建成功

2、配置可视化在线测试Swagger

1、打开应用程序的入口文件Program.cs

2、注释自动生成代码,添加如下代码,设置Swagger

app.UseSwagger();
app.UseSwaggerUI(c =>
{
    c.RoutePrefix = String.Empty;
    c.SwaggerEndpoint("swagger/v1/swagger.json", "HS.CA V1"); //第二个参数可自定义命名
});

 3、打开launchSettings.json文件,注释launchUrl节点

这样配置,发布到iis、直接在vs环境启动都可以使用swagger

3、注册Log4net日志系统

1、使用NuGet添加Log4net引用

 2、按下图安装Log4net

3、启动文件Program.cs中注册Log4net服务

//注册Log4net
builder.Logging.AddLog4Net("log4net.config");

 4、根目录下增加Log4net的配置文件log4net.config

 5、替换log4net.config文件内容(文件在文章顶端下载)


4、安装Dapper(数据库访问组件)

1、使用NuGet添加Dapper引用

5、注册数据库访问服务

1、使用NuGet添加Oracle.ManagedDataAccess.Core引用

 2、在appsettings.json文件中添加数据库连接字符串

  "ConnectionStrings": {
    "oracle": "data source=127.0.0.1/his;password=hsemr;user id=hsemr;Pooling = True;Max Pool Size = 500;Min Pool Size = 10;Connection Timeout=120"
  }

 2、启动文件Program.cs中加载appsettings.json配置文件

//加载配置文件
IConfiguration _configuration = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory())
                                                          .AddJsonFile("appsettings.json")
                                                          .Build();

 3、注册数据库访问服务

//注册数据库访问服务
builder.Services.AddScoped<IDbConnection>((x) =>
{
    var connStr = _configuration.GetConnectionString("oracle");
    var conn = new Oracle.ManagedDataAccess.Client.OracleConnection(connStr);
    return conn;
});

6、访问数据库(使用日志、数据访问服务)

1、添加API控制器TestController

 2、定义数据访问、日志对象,构造函数。

private readonly IDbConnection _dbConn;
private readonly ILogger<TestController> _logger;

public TestController(IDbConnection? dbConn, ILogger<TestController>? logger)
{
    _dbConn = dbConn;
    _logger = logger;
}

3、添加数据库访问方法,更复杂的数据库访问访问可以查看GitHub - DapperLib/Dapper: Dapper - a simple object mapper for .Net

7、测试

1、vs直接启动

2、iis浏览,IIS部署请看:发布.net6 WebApi项目到IIS会踩到的坑(500、404)-CSDN博客

 3、运行结果

  • 20
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ts16dmy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值