我知道这违反了.NET规则,但有时我需要它.例如,我需要经历一个Dictionary<string, bool>.该字典将我的变量存储在解析的逻辑方程中.我想输出一个真值表,所以我需要迭代并设置元素.
我尝试过的一件事是
foreach (var x in Variables.Keys)
{
bool on = ((in) & (j << in)) > 0;
Variables[x] = on;
builder.Append(on == true ? '1' : '0').Append('\t');
j++;
}
Run Code Online (Sandbox Code Playgroud)
我得到一个InvalidOperationException:收藏被修改; 枚举操作可能无法执行.我转换的字典一个数组,并试图改变这种方式,但是KeyValuePair.Value是只读的,所以它不会起作用.