SelectList with Dictionary,在分配给SelectList后为Dictionary添加值

时间:2013-07-10 20:56:57

标签: c# asp.net-mvc

我有以下代码 -

Dictionary<string, string> myDict = new Dictionary<string, string>();

myDict.Add("keyA", "valueA");
myDict.Add("keyB", "valueB");

IEnumerable<SelectListItem> mySelectList = new SelectList(myDict, "key", "value")

在程序中,我想向myDict添加值。那可能吗?如果是,那怎么样? 我想做一些像 -

mySelectList.myDict.Add("keyC", "valueC");

2 个答案:

答案 0 :(得分:2)

如果您想要向myDict添加项目,这当然是可能的,只要在枚举之前进行了更改,任何更改都将反映在mySelectList的任何枚举中(例如,使用{生成{1}})。

作为一个有效的例子:

.ToList()

答案 1 :(得分:0)

尝试像这样可怕的东西:

((Dictionary<string, string>)mySelectList.Items).Add("keyC", "valueC");

如果您只是在自己的代码中保留对myDict的引用会更好,但不要滥用它们的属性。

注意:这很可能不起作用。我没试过。