2014-01-30 80 views
0

我想插入一個INI文件段作爲枚舉值。INI段與Enum相當

據我所知,是讓INI段落:

List<string> categories = GetCategories(iniFile); 
foreach (string category in categories) 

我怎樣才能把它插入到枚舉?

+3

如果我正確理解你想要什麼,你不能。而是使用'Dictionary'和存儲節名作爲鍵。 –

+0

@AndreiV我想用戶可以改變一個枚舉值。他無法訪問代碼,但可以編輯ini文件部分並在代碼中讀取。 – user3165438

+0

如果您仔細閱讀[此鏈接](http://msdn.microsoft.com/zh-cn/library/sbbt4032.aspx)的第一行,您將遇到「常量」一詞。這就是枚舉。這意味着用戶不能更改這些值。枚舉不能動態構造(它可能使用反射,但不希望遵循該路徑)。請嘗試提供您嘗試實現的具體示例。有人可能會有一個合適的解決方案。 –

回答

1

Enum值是常量,不能(很容易)修改。相反,你可以使用一個Dictionary

Dictionary<string, string> iniSections = Dictionary<string, string>(); 
List<string> categories = GetCategories(iniFile); 

foreach (string category in categories) 
{ 
    iniSections.Add(categoryName, category); 
} 

你需要,當然要提供有效categoryName爲每個可用category