public int SaveVariable(IVariableDb variableDb, int? transactionNumber = null) { if (variableDb.InstanceId != _instanceId) throw new Exception("Attempt to save Variable with wrong InstanceId"); Variable record; var recordOld = new Variable(); if (variableDb.VariableId == 0) { record = new Variable(); Context.AddToVariables(record); } else { record = Context.Variables.Where(r => r.VariableId == variableDb.VariableId).First(); ReflectionHelper.CopyAllProperties(record, recordOld); } record.InstanceId = _instanceId; record.VariableKey = variableDb.VariableKey; record.VariableValue = variableDb.VariableValue; Context.SaveChanges(); if (variableDb.VariableId == 0) { variableDb.VariableId = record.VariableId; LogToDb(UserId, "Variables", record.VariableId, "I", XmlHelper.GetObjectXml(record), transactionNumber); } else { LogToDb(UserId, "Variables", record.VariableId, "U", XmlHelper.GetDifferenceXml(recordOld, record), transactionNumber); } return variableDb.VariableId; }
/// <summary> /// Deprecated Method for adding a new object to the Variables EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// </summary> public void AddToVariables(Variable variable) { base.AddObject("Variables", variable); }
public void AddToVariables(Variable record) { _context.AddToVariables(record); }
/// <summary> /// Create a new Variable object. /// </summary> /// <param name="variableId">Initial value of the VariableId property.</param> /// <param name="instanceId">Initial value of the InstanceId property.</param> /// <param name="variableKey">Initial value of the VariableKey property.</param> /// <param name="variableValue">Initial value of the VariableValue property.</param> public static Variable CreateVariable(global::System.Int32 variableId, global::System.Int32 instanceId, global::System.String variableKey, global::System.String variableValue) { Variable variable = new Variable(); variable.VariableId = variableId; variable.InstanceId = instanceId; variable.VariableKey = variableKey; variable.VariableValue = variableValue; return variable; }