Log4Net日志写SqlServer:
Nuget引入程序包;
System.Data.SqlClient
![](https://i-blog.csdnimg.cn/blog_migrate/44a20298b4ead02f9f67b5608a021489.png)
修改配置文件:支持写数据库;
在log4net.Config文件中修改配置文件;
![](https://i-blog.csdnimg.cn/blog_migrate/14008b393c0396fd8248993d1afe95f8.png)
对应的数据库表结构;
![](https://i-blog.csdnimg.cn/blog_migrate/1b164f0852fafac248db5d494ecbc66b.png)
初始化数据库日志表;
这里注入我们的SecondController
![](https://i-blog.csdnimg.cn/blog_migrate/2a3cbdafc9cb747bbba8589fd2fdcaa7.png)
using Microsoft.AspNetCore.Mvc;
namespace Advanced.NET6.Project.Controllers
{
public class SecondController : Controller
{
private readonly ILogger<SecondController> _Logger;
private readonly ILoggerFactory _LoggerFactory;
public SecondController(ILogger<SecondController> logger,ILoggerFactory
loggerFactory)
{
this._Logger = logger;
this._Logger.LogInformation($"{this.GetType().Name}被构造了。。。_Logger");
this._LoggerFactory = loggerFactory;
ILogger<SecondController> _Logger2=
this._LoggerFactory.CreateLogger<SecondController>();
_Logger2.LogInformation($"{this.GetType().Name}被构造了。。。_Logger2");
}
public IActionResult Index()
{
ILogger<SecondController> _Logger3 =
this._LoggerFactory.CreateLogger<SecondController>();
_Logger3.LogInformation($"{this.GetType().Name}被执行了。。。_Logger3");
this._Logger.LogInformation($"Index 被执行了。。。");
return View();
}
}
}
注入写日志测试;
注意在项目启动之前我们需要删除之前写的日志;
访问我们SecondIndex:
![](https://i-blog.csdnimg.cn/blog_migrate/0a96b8b14b6cc07df7d1da8dfdce206d.png)
查看我们的数据库日志:
![](https://i-blog.csdnimg.cn/blog_migrate/ba42a00ab6d1e01f48fd9784f2e2579e.png)
这里可以看到日志已经写入到我们的数据库了;
再次查看我们的文本日志:
![](https://i-blog.csdnimg.cn/blog_migrate/c26ff83aed02eafbd9e6f31a4110beb4.png)