在整个大型项目中存储一些字符串文字的最佳方法是什么?出于显而易见的原因,我不希望开发人员在不止一个地方写文字。我也是,不想要一堆冗余/无用的代码。我正在寻找最简洁/最简单的方法来获得一个易于访问的字符串文字列表(意味着它们具有status.passed = "passed"
而不是status[0] = "passed"
的声明性名称),并以合理的方式存储。 enum
是理想的但他们不能接受字符串,我在这里看到的字典+枚举解决方案对我没有吸引力。
静态类是最佳选择吗?
答案 0 :(得分:7)
您应该使用resource(。arex)文件。
答案 1 :(得分:2)
肯定的枚举不能满足您的需求吗?
namespace EnumTest
{
public enum enumRole : byte { projMgr = 2, docAdmin = 3, dataAdmin = 4, sysAdmin = 9, userAdmin = 5 };
class Program
{
static void Main(string[] args)
{
enumRole myrole = enumRole.docAdmin;
if (myrole == enumRole.docAdmin) Console.WriteLine("I am docAdmin");
// i use the key to save to SQL and restore
// in SQL have a fk table to match the enum
Console.WriteLine((byte)myrole);
myrole = (enumRole)9;
Console.WriteLine(myrole.ToString() + " " + ((byte)myrole).ToString());
Console.ReadLine();
}
}
}
答案 2 :(得分:1)
在这种情况下使用常量
或
资源文件(* .resx)。