繁体   English   中英

样板文件上的 CA1304

[英]CA1304 on Boilerplate

我们有一个用 .NET Core 2.2 编写的相当大的项目,更新到 Abp 4.10.1,我们通过 Abp 的模板启动。

最近我在项目中添加了Roslyn 分析器,现在我们在L 方法的每个实例上都有数百条警告。

例子:

case AbpLoginResultType.InvalidPassword:
    return new UserFriendlyException(L("LoginFailed"), L("InvalidUserNameOrPassword"));

给我们:

警告 CA1304 “AbpServiceBase.L(string)”的行为可能因当前用户的区域设置而异。 将“AbpLoginResultTypeHelper.CreateExceptionForFailedLoginAttempt(AbpLoginResultType, string, string)”中的此调用替换为对“AbpServiceBase.L(string, CultureInfo)”的调用。

正如我从文档中了解到的那样,L 方法旨在简化本地化调用并且已经考虑了 culture ,但是将CultureInfo信息添加到每个调用以满足 Roslyn 分析器的要求会破坏其目的。

我不想在项目级别抑制此警告,我们考虑的其他选项似乎非常耗时。

那么,有没有一种有效的方法来处理这个问题呢?

文档显示了此规则背后的原因和动机。

由您决定这对您重要与否。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM