diff --git a/src/Microsoft.Extensions.Logging.Abstractions/LoggerFactoryExtensions.cs b/src/Microsoft.Extensions.Logging.Abstractions/LoggerFactoryExtensions.cs
index 561f8213..56cc9ef3 100644
--- a/src/Microsoft.Extensions.Logging.Abstractions/LoggerFactoryExtensions.cs
+++ b/src/Microsoft.Extensions.Logging.Abstractions/LoggerFactoryExtensions.cs
@@ -2,7 +2,6 @@
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
-using Microsoft.Extensions.Internal;
namespace Microsoft.Extensions.Logging
{
@@ -16,14 +15,14 @@ public static class LoggerFactoryExtensions
///
/// The type.
/// The factory.
- public static ILogger CreateLogger(this ILoggerFactory factory)
+ public static ILogger CreateLogger(this ILoggerFactory factory)
{
if (factory == null)
{
throw new ArgumentNullException(nameof(factory));
}
- return factory.CreateLogger(TypeNameHelper.GetTypeDisplayName(typeof(T), fullName: true));
+ return new Logger(factory);
}
}
}
\ No newline at end of file
diff --git a/src/Microsoft.Extensions.Logging/LoggerOfT.cs b/src/Microsoft.Extensions.Logging.Abstractions/LoggerOfT.cs
similarity index 82%
rename from src/Microsoft.Extensions.Logging/LoggerOfT.cs
rename to src/Microsoft.Extensions.Logging.Abstractions/LoggerOfT.cs
index 57a49757..28329af8 100644
--- a/src/Microsoft.Extensions.Logging/LoggerOfT.cs
+++ b/src/Microsoft.Extensions.Logging.Abstractions/LoggerOfT.cs
@@ -2,6 +2,7 @@
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
+using Microsoft.Extensions.Internal;
namespace Microsoft.Extensions.Logging
{
@@ -13,14 +14,19 @@ namespace Microsoft.Extensions.Logging
public class Logger : ILogger
{
private readonly ILogger _logger;
-
+
///
/// Creates a new .
///
/// The factory.
public Logger(ILoggerFactory factory)
{
- _logger = factory.CreateLogger();
+ if (factory == null)
+ {
+ throw new ArgumentNullException(nameof(factory));
+ }
+
+ _logger = factory.CreateLogger(TypeNameHelper.GetTypeDisplayName(typeof(T), fullName: true));
}
IDisposable ILogger.BeginScopeImpl(object state)