我希望我能解釋我的意思。如何在靜態類中使用類
namespace BackgroundJob
{
public static class Konstanten
{
public const string closed = "closed";
public const string error = "error";
public static readonly JobStatus jobStatus = new JobStatus();
}
private class JobStatus
{
public string closed { get { return "closed"; } }
public string error { get { return "error"; } }
}
}
我認爲如果使用它們將會更好地分組常量。 這就是爲什麼我創建了類「JobStatus」的原因。我在switch case語句中使用常量。這工作得很好:
case Konstanten.error:
但這會導致一個錯誤:
case Konstanten.jobStatus.error:
ErrorMessage: "A constant value is expected"
你能告訴我怎麼解決這個問題呢?
'Konstanten.jobStatus'是對象的引用。該對象恰好不斷地爲其成員返回相同的值,但這不會使'Konstanten.jobStatus.error'成爲可用於switch語句的常量值。那些必須是* real *常量,可以在編譯時查找。 – poke
聽起來你應該使用枚舉而不是const字符串 –