クラスがあります。
public class abc
{
public int i = 0;
public string a = "";
}
=======================================
今、タイプabcクラスのリストにいくつかのレコードを挿入しています
List<abc> c = new System.Collections.Generic.List<abc>();
abc a = new abc();
a.a = "1";
a.i = 1;
c.Add(a);
a = new abc();
a.a = "1";
a.i = 2;
c.Add(a);
===========================================
リスト変数を作成し、フィルター処理されたレコードをいくつか追加します。
List<abc> temp = new System.Collections.Generic.List<abc>();
temp.AddRange(c.Where(i => i.i == 1));
===============================================
クエリ = 以下のコード行を実行すると、c 変数も変更されます。
私は両方が同じメモリ位置を指していることを知っています。このコードを修正する方法はありますか?
foreach (abc d in temp)
{
d.i = 10;
}