与任何应用程序一样,我使用常用字符串来提供用户反馈,验证消息,描述,按钮文本等。
我想将这些字符串存储在逻辑位置。这样做的理想方法是什么?我不认为这是一个意见问题;我怀疑有答案。
我已经查看了其他答案,例如this one,但我特别感兴趣的是对以下三种方法的比较 - 即解释为什么一种技术比其他两种方法更好。
资源文件用于存储字符串,但这是最适合它的地方吗?这些用于本地化吗?资源文件不会太大吗?如果您使用多个资源文件,以后跟踪特定字符串会不会很难?
一种全局的“Const”静态类来存储它们吗?
(模块是C#静态类)
使用这种技术,您可以在课程开头获得相关信息。 “UserAdded”字符串将出现在主要使用该字符串的类中。
C#或VB.NET在答案中是可以接受的。
答案 0 :(得分:1)
方法1 - 如果您以后需要这样做,则更容易进行本地化。资源文件的主要好处是您不需要重新编译代码来进行文本更改。只需更改文件并上传即可。他们能“变得太大”吗?当然,任何事情都可以。如果是这样,请创建多个资源文件。
方法2 - 更容易对字符串进行一系列更改,更难以找到应用中显示每个字符串的位置。你需要以某种方式对你的字符串进行逻辑分组。
方法3 - 如果您需要更改字符串,则更容易找到字符串的位置,如果您将文本放入相关类中。缺点是,如果你需要改变一堆字符串,你需要经历一大堆课程。
如果您需要经常更改字符串,或者想要编写管理工具以便其他人可以更改它们,请从数据库中驱动它们。这是我个人的偏好。
如果您几乎不需要更改它们,请将它们直接放入您的视图中。 (ASPX,cshtml或XAML,无论如何)。毕竟,这就是它的用途。您多久更改一次“用户已成功添加”?只需将其粘贴到您的视图中,其他程序员可能会首先查找它们。