В настоящее время у меня есть довольно простой метод, который вычисляет список CurveValue (пользовательский объект), проблема в том, что мне нужно вычислить параметр и передать десятичную запятую без фактического изменения параметра.
Я пытался добавить AddRange () в новый объект, чтобы не повредить кривую параметров, но кажется, что ссылка все еще существует, и после выполнения ForEach () изменились как кривая, так и кривая A.
I 'м, если на него все еще ссылаются, но есть ли простой способ сделать это, не перечисляя кривую параметров и не добавляя ее к кривой A?
public decimal Multiply(List<CurveValue> curve, decimal dVal)
{
List<CurveValue> curveA = new List<CurveValue>();
curveA.AddRange(curve);
curveA.ForEach(a => a.Value = decimal.Round(a.Value, 4) * dVal);
return Sum(curveA);
}
public decimal Sum(List<CurveValue> curveA)
{
return curveA.Sum(x => x.Value);
}