public string GetValue(int ParamId) { var md = ParameterValues.Where(v => v.ParameterId == ParamId).Max(v => (DateTime?)v.Moment); if (md == null) { return(null); } return(ParameterValues.Where(v => v.ParameterId == ParamId && v.Moment == md.Value).Select(v => v.Val).FirstOrDefault()); }
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; } }