在代码中存储应用程序const字符串的最佳实践

Alo*_*980 8 c# string constants

在我的应用程序(C#)中,我有很多const消息,它们被打印到日志中,呈现给用户,等等.这个const消息不会改变,因此没有必要将它们放在外部文件或数据库中.我的解决方案非常简单 - 我正在考虑创建一个静态类并将其命名为ConstMessages.这个类只包含许多公共const字符串变量,可以从应用程序的任何地方访问它们.您能否建议该方法是否有任何问题,以及是否有更好的方法?谢谢!

ani*_*vas 6

我会使用readonly而不是const来克服版本问题.

  • @Alxandr:如果在代码中多个位置重用的程序集中使用常量,则会强制重新编译使用程序集的所有客户端代码,因为编译器会对该值进行硬编码.使用只读值时,将在运行时解析该值.因此,只需插入新版本的程序集就会导致客户端代码使用新值.本书中有一个很好的章节:http://www.amazon.com/Effective-Covers-4-0-Specific-Development/dp/0321658701/ref=sr_1_1?ie=UTF8&qid=1309707290&sr=8-1 (第1章:第2项:首选readonly至const) (8认同)

vcs*_*nes 5

这通常适用于简单的应用程序 - 如果您认为应用程序可能需要本地化/支持多种语言,则另一个选项是RESX文件.