/// <summary> /// Update parameters. /// </summary> /// <param name="request"></param> /// <returns></returns> public GXParameterUpdateResponse Post(GXParameterUpdateRequest request) { lock (Db) { using (IDbTransaction trans = Db.OpenTransaction(IsolationLevel.ReadCommitted)) { foreach (var it in request.Parameters) { GXAmiParameter param = new GXAmiParameter(); param.Value = it.Value; Db.UpdateOnly(param, p => p.Value, p => p.Id == it.Key); } trans.Commit(); } return(new GXParameterUpdateResponse()); } }
void UpdateParameters(IDbConnection Db, ulong deviceId, ulong parentId, GXAmiParameter[] parameters, bool insert) { if (parameters != null) { foreach (GXAmiParameter it in parameters) { if (insert || it.Id == 0) { GXAmiParameter tmp = it; tmp.DeviceID = deviceId; tmp.ParentID = parentId; Db.Insert <GXAmiParameter>(tmp); } else { //User can only change value of the parameter. Db.UpdateOnly(it, p => p.Value, p => p.Id == it.Id); } } } }
void UpdateParameters(IDbConnection Db, ulong deviceId, ulong parentId, GXAmiParameter[] parameters, bool insert) { if (parameters != null) { foreach (GXAmiParameter it in parameters) { if (insert || it.Id == 0) { GXAmiParameter tmp = it; tmp.DeviceID = deviceId; tmp.ParentID = parentId; Db.Insert<GXAmiParameter>(tmp); } else { //User can only change value of the parameter. Db.UpdateOnly(it, p => p.Value, p => p.Id == it.Id); } } } }
void UpdateParameter(GXAmiParameter[] parameters, object target) { PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(target); foreach (GXAmiParameter it in parameters) { if (it.Type != null && it.Value != null) { if (it.Type.IsEnum) { it.Value = Enum.Parse(it.Type, it.Value.ToString()); } else if (it.Type.GetType() != typeof(object)) { it.Value = Convert.ChangeType(it.Value, it.Type); } } properties[it.Name].SetValue(target, it.Value); } }
void UpdateValues(GXAmiParameter[] parameters, object target, List<GXAmiParameter> list) { PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(target); object value; foreach (GXAmiParameter dp in parameters) { value = properties[dp.Name].GetValue(target); if (ShouldSerialize(value, dp.Value)) { dp.Value = value; list.Add(dp); } } }
/// <summary> /// Update parameters. /// </summary> /// <param name="request"></param> /// <returns></returns> public GXParameterUpdateResponse Post(GXParameterUpdateRequest request) { lock (Db) { using (IDbTransaction trans = Db.OpenTransaction(IsolationLevel.ReadCommitted)) { foreach (var it in request.Parameters) { GXAmiParameter param = new GXAmiParameter(); param.Value = it.Value; Db.UpdateOnly(param, p => p.Value, p => p.Id == it.Key); } trans.Commit(); } return new GXParameterUpdateResponse(); } }
void pc_OnUpdateParameters(GXAmiParameter[] parameters) { DC.Update(parameters); }