だから私はこのようなC#foreachループを手に入れました
foreach(Type s in source)
{
dic1.Clear();
dic1.Add(Key1, s.Attr1);
dic1.Add(Key2, s.Attr2);
...
dic1.Add(KeyN, s.AttrN);
dic2.Add(ind, dic1);
ind++;
}
値を取得して正しく設定しますが、問題はありません。しかし、が呼び出されると、に追加されたものがdic1.Clear()
クリアされ、
処理される新しいデータでその内容が書き換えられ、最後に処理されたデータ/オブジェクトと同じデータを持つN個の辞書が生成されます。に追加されたものに本当に影響しますか?もしそうなら、私はそれをコピーして追加する必要がありますか?dic1
dic2
dic1.Clear()
dic2
dic1
dicTemp
dic2
よろしくお願いします。