在 ASP .NET Core 3.1 中调用 LoggerExtensions 方法时禁用/关闭 FxCop CA1303
Disable / Turn off FxCop CA1303 when calling LoggerExtensions methods in ASP .NET Core 3.1
我希望我的日志是英文的,因此不想本地化它们。
我在 ASP .NET Core 3.1 中有一个项目,我在其中添加了 nuget 包 Microsoft.CodeAnalysis.FxCopAnalyzers
版本 3.0.0,我在对 _logger.LogInformation("")
的所有调用中收到警告 CA1303 .
我曾尝试使用 use_naming_heuristic
和 excluded_type_names_with_derived_types
,但它们似乎无法使用 Microsoft.Extensions.Logging.LogginExtensions
或 Microsoft.Extensions.Logging.ILogger
,所以我总是收到警告.
这是我的 .editorconfig 文件:
[*.cs]
# CA1303: Do not pass literals as localized parameters
dotnet_code_quality.CA1303.use_naming_heuristic = false
dotnet_code_quality.CA1303.excluded_type_names_with_derived_types = ClassA|LoggerExtensions|ILogger
我有一个 class ClassA
被注入 ILogger<ClassA>
:
internal class ClassA : IClassA
{
private readonly ILogger<ClassA> _logger;
public ClassA(ILogger<ClassA> logger)
{
_logger = logger;
}
public void Initialize()
{
_logger.LogInformation("Initializing..."); // <- Always get the CA1303 in this string.
}
}
我尝试使用 true
/false
,我还尝试添加 ILogger<>
、ILogger<T>
和 ILogger<ClassA>
,但没有任何警告消失。
我是不是误解了这个功能并配置了这个规则错误,或者这里可能存在错误?
编辑:
我添加了一个名为 MyLogger
的自定义 MyLogger
,继承自 IMyLogger
,它得到了一个 ILogger
注入。我将 IMyLogger
注入 ClassA class 并将 excluded_type_names_with_derived_types
中的类型替换为 IMyLogger
和 MyLogger
并且 CA1303 仍然存在。我重建甚至重新启动了 VS2019 16.5.4,但它仍然存在。
我希望我的日志是英文的,因此不想本地化它们。
我在 ASP .NET Core 3.1 中有一个项目,我在其中添加了 nuget 包 Microsoft.CodeAnalysis.FxCopAnalyzers
版本 3.0.0,我在对 _logger.LogInformation("")
的所有调用中收到警告 CA1303 .
我曾尝试使用 use_naming_heuristic
和 excluded_type_names_with_derived_types
,但它们似乎无法使用 Microsoft.Extensions.Logging.LogginExtensions
或 Microsoft.Extensions.Logging.ILogger
,所以我总是收到警告.
这是我的 .editorconfig 文件:
[*.cs]
# CA1303: Do not pass literals as localized parameters
dotnet_code_quality.CA1303.use_naming_heuristic = false
dotnet_code_quality.CA1303.excluded_type_names_with_derived_types = ClassA|LoggerExtensions|ILogger
我有一个 class ClassA
被注入 ILogger<ClassA>
:
internal class ClassA : IClassA
{
private readonly ILogger<ClassA> _logger;
public ClassA(ILogger<ClassA> logger)
{
_logger = logger;
}
public void Initialize()
{
_logger.LogInformation("Initializing..."); // <- Always get the CA1303 in this string.
}
}
我尝试使用 true
/false
,我还尝试添加 ILogger<>
、ILogger<T>
和 ILogger<ClassA>
,但没有任何警告消失。
我是不是误解了这个功能并配置了这个规则错误,或者这里可能存在错误?
编辑:
我添加了一个名为 MyLogger
的自定义 MyLogger
,继承自 IMyLogger
,它得到了一个 ILogger
注入。我将 IMyLogger
注入 ClassA class 并将 excluded_type_names_with_derived_types
中的类型替换为 IMyLogger
和 MyLogger
并且 CA1303 仍然存在。我重建甚至重新启动了 VS2019 16.5.4,但它仍然存在。