File tree 1 file changed +20
-1
lines changed
src/libraries/Microsoft.Extensions.Logging/src
1 file changed +20
-1
lines changed Original file line number Diff line number Diff line change @@ -178,12 +178,31 @@ public List<LoggerProviderDebugView> Providers
178
178
{
179
179
LoggerInformation loggerInfo = logger . Loggers [ i ] ;
180
180
string providerName = ProviderAliasUtilities . GetAlias ( loggerInfo . ProviderType ) ?? loggerInfo . ProviderType . Name ;
181
- MessageLogger ? messageLogger = logger . MessageLoggers ? . FirstOrDefault ( messageLogger => messageLogger . Logger == loggerInfo . Logger ) ;
181
+ MessageLogger ? messageLogger = FirstOrNull ( logger . MessageLoggers , loggerInfo . Logger ) ;
182
182
183
183
providers . Add ( new LoggerProviderDebugView ( providerName , messageLogger ) ) ;
184
184
}
185
185
186
186
return providers ;
187
+
188
+ // Find message logger or return null if there is no match. FirstOrDefault isn't used because MessageLogger is a struct.
189
+ static MessageLogger ? FirstOrNull ( MessageLogger [ ] ? messageLoggers , ILogger logger )
190
+ {
191
+ if ( messageLoggers is null || messageLoggers . Length == 0 )
192
+ {
193
+ return null ;
194
+ }
195
+
196
+ foreach ( MessageLogger item in messageLoggers )
197
+ {
198
+ if ( item . Logger == logger )
199
+ {
200
+ return item ;
201
+ }
202
+ }
203
+
204
+ return null ;
205
+ }
187
206
}
188
207
}
189
208
You can’t perform that action at this time.
0 commit comments