CA1303 改为从资源表中检索以下字符串:“服务已启动”
Posted
技术标签:
【中文标题】CA1303 改为从资源表中检索以下字符串:“服务已启动”【英文标题】:CA1303 Retrieve the following string(s) from a resource table instead: "Service Started" 【发布时间】:2017-05-09 04:51:03 【问题描述】:我在 FxCop 中违反了以下规定。当我对Console.WriteLine("Service Started");
中的字符串进行硬编码时
方法“method()”将文字字符串作为参数“值”传递给“Console.WriteLine(string)”。而是从资源表中检索以下字符串:“服务已启动”
所以我改变了下面的代码。
ResourceManager rm = new ResourceManager("Service Started", Assembly.GetExecutingAssembly());
string start = rm.GetString("Service Started");
Console.WriteLine(start);
现在我没有收到 FxCop 违规。但我在string start = rm.GetString("Service Started");
行中得到了以下异常
如何解决这个异常?
附加信息:找不到任何适合指定文化或中立文化的资源。确保“Service Started.resources”在编译时已正确嵌入或链接到程序集“命名空间名称”中,或者所需的所有附属程序集都是可加载且完全签名的。
【问题讨论】:
【参考方案1】:您似乎没有添加资源字符串和值。请验证以下链接以供参考:
Code Analysis using VS.Net 2010
How to create and use resources in .NET
【讨论】:
以上是关于CA1303 改为从资源表中检索以下字符串:“服务已启动”的主要内容,如果未能解决你的问题,请参考以下文章
在 ASP .NET Core 3.1 中调用 LoggerExtensions 方法时禁用/关闭 FxCop CA1303