私はオブジェクトクラスを持っていますTimeDuration
。配列 Span から取得したオブジェクトの値を変更しようとすると、配列内の値も変更されます。親オブジェクトの値を変更しないオブジェクトのコピーを取得するにはどうすればよいですか? このコピーを別の関数に渡す必要があり、そこでこのオブジェクトを変更する必要があります
public void test()
{
List<TimeDuration> Span = new List<TimeDuration>();
TimeDuration ob = new TimeDuration();
ob.FromTime = DateTime.Now;
ob.ToTime = DateTime.Now.AddDays(1);
Span.Add(ob);
//Trying to assign value here!
TimeDuration ob2= Span[1];
ob2.FromTime = DateTime.Now.AddDays(3);
}
public class TimeDuration
{
public DateTime FromTime { get; set; }
public DateTime ToTime { get; set; }
}