public void SetValue(int ParamId, string val, DateTime moment) { Parameter p = Parameters.FirstOrDefault(p => p.Id == ParamId); if (p == null) { return; } if (!p.SingleValue || ParameterValues.Where(v => v.ParameterId == ParamId).Count() == 0) { p.Values.Add(new ParameterValue() { Moment = moment, Val = val }); } else { var pv = ParameterValues.First(v => v.ParameterId == ParamId); pv.Val = val; pv.Moment = moment; } }