我部分修改應用程序,我將需要以下常量的值設置爲可變如果存在環境的價值。在C#中設定值恆定的特性
我已經有了:
private const string BuildPackagePath = @"\\server\build\";
我想要做的是:
if (Environment.GetEnvironmentVariable("EnvVar") != null)
Set the property value to = Environment.GetEnvironmentVariable("EnvVar")
else
{Keep default/assigned value}
我明白,一個asignment的左邊必須是一個變量。我可能不得不改變類型,但只是想知道是否有人能給我一個想法,所以當前代碼的結構可以保持原樣。
您不能修改常量值,這就是爲什麼它被稱爲* constant *。但是,您可以使用'readonly'來表示只能在構造函數中修改成員。 – HimBromBeere
謝謝!我只是想檢查 – ditu
對於大多數打算和目的'靜態readonly'會像'const' *運行時*。如果你需要一個編譯時間常數,你當然不能使用它。 - 所以你可以有'私人靜態只讀字符串BuildPackagePath = Environment.GetEnvironmentVariable(「ENVVAR」)? @「\\服務器\建設\」;' – Corak