【发布时间】:2010-09-11 18:35:54
【问题描述】:
可以将结构用作硬编码值的数据库吗?有时我们无法避免硬编码,尽管最好将其放在 xml 文件或数据库表之类的东西上,但有时由于某些原因是不可能的。
public struct BatchStatus
{
public const string Submitted = "0901XX";
public const string Active = "62783XY";
public const string Inactive = "S23123";
}
那我就这样用
switch (batchStatus) // enums doesnt work in switch case
{
case BatchStatus.Submitted:
new Batch().Submit(); break;
case BatchStatus.Inactive:
new Batch1().Activate(); break;
case BatchStatus.Active
new Batch2().Deactivate(); break;
}
【问题讨论】:
-
我在回答中忽略了这一点,但你在评论
'enums doesnt work in switch case '中是什么意思? -
如果 BatchStatus 是这样的枚举:enum BatchStatus { 0901XX , 62783XY },并将其放入 case statemesnt 中,如下所示:case BatchStatus.62783XY.ToString(): new Batch()。 Submit() 它抛出异常