Skip to content

Commit e01f204

Browse files
author
DwGoing
committed
✨ feat(): 新增Logger扩展,获取服务
1 parent cc6f4c1 commit e01f204

File tree

3 files changed

+38
-13
lines changed

3 files changed

+38
-13
lines changed

.github/workflows/Ubuntu.yml

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,7 @@
11
name: Ubuntu
22

33
on:
4-
push:
5-
branches:
6-
- 5.1.x
7-
paths-ignore:
8-
- ".github/**"
9-
- "build/**"
10-
- ".gitignore"
11-
- "LICENSE"
12-
- "*.md"
13-
- "*.yml"
144
pull_request:
15-
branches:
16-
- 5.1.x
175
paths-ignore:
186
- ".github/**"
197
- "build/**"
@@ -32,7 +20,7 @@ jobs:
3220
uses: actions/setup-dotnet@v1
3321
with:
3422
dotnet-version: 5.0.x
35-
- name: Restore dependencies
23+
- name: Restore
3624
run: dotnet restore
3725
- name: Build
3826
run: dotnet build --no-restore

example/CoreExample/Program.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using System.IO;
23
using System.Threading.Tasks;
34
using Microsoft.Extensions.Configuration;
45
using Microsoft.Extensions.DependencyInjection;

src/DwFramework.Core/Extensions/LogExtension.cs

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System;
22
using Microsoft.Extensions.Configuration;
3+
using Microsoft.Extensions.DependencyInjection;
34
using Microsoft.Extensions.Logging;
45
using NLog.Extensions.Logging;
56

@@ -47,5 +48,40 @@ public static ILoggingBuilder UserNLog(this ILoggingBuilder builder, string conf
4748
builder.AddNLog(configPath);
4849
return builder;
4950
}
51+
52+
/// <summary>
53+
/// 获取Logger工厂
54+
/// </summary>
55+
/// <param name="provider"></param>
56+
/// <typeparam name="ILoggerFactory"></typeparam>
57+
/// <returns></returns>
58+
public static ILoggerFactory GetLoggerFactory(this IServiceProvider provider) => provider.GetService<ILoggerFactory>();
59+
60+
/// <summary>
61+
/// 获取Logger
62+
/// </summary>
63+
/// <param name="provider"></param>
64+
/// <typeparam name="T"></typeparam>
65+
/// <returns></returns>
66+
public static ILogger<T> GetLogger<T>(this IServiceProvider provider)
67+
=> provider.GetService<ILogger<T>>();
68+
69+
/// <summary>
70+
/// 获取Logger
71+
/// </summary>
72+
/// <param name="provider"></param>
73+
/// <param name="type"></param>
74+
/// <returns></returns>
75+
public static ILogger GetLogger(this IServiceProvider provider, Type type)
76+
=> provider.GetLoggerFactory().CreateLogger(type);
77+
78+
/// <summary>
79+
/// 获取Logger
80+
/// </summary>
81+
/// <param name="provider"></param>
82+
/// <param name="name"></param>
83+
/// <returns></returns>
84+
public static ILogger GetLogger(this IServiceProvider provider, string name)
85+
=> provider.GetLoggerFactory().CreateLogger(name);
5086
}
5187
}

0 commit comments

Comments
 (0)