这是一个关于最佳编码实践的问题。 我想知道如何最好地避免在.NET应用程序中硬编码字符串和值的共识。 我到目前为止,我以前工作过看出:如何避免硬编码字符串
- 使用资源.resx文件
- 存储这些值和字符串App.config中或web.config中
制作一个静态类ApplicationStrings并宣布所有的字符串和值有:
public static class ApplicationStrings { #region constants public const string APPLICATION_NAME = "X"; public const string APPLICATION_RESOURCEMANAGER_NAME = "ResourceManagerX"; public const string APPLICATION_DEFAULT_LOGFILENAME = "log.txt"; }
但是,没有第三个方法,只是一个硬编码?有这样一个班级是否有意义?好处是所有的字符串都在一个地方,但真的避免了硬编码吗?
此外,如果你已经开发了这种情况的其他习惯,随时张贴。
我宁愿在这里使用静态只读字段来覆盖常量。常量更多的是永远具有相同价值的东西。这使得他们的二进制版本化语义有点烦人。 – CodesInChaos