public override ResultOperation SaveValues(DataModel _DataModel, Dictionary <string, DataModel> allSavedEntities = null)
        {
            if (this.ThreadID.HasValue)
            {
                ThreadVariableService threadVariableService = new ThreadVariableService(this.UnitOfWork);
                sysBpmsThreadVariable _ThreadVariable       = threadVariableService.GetInfo(this.ThreadID.Value, this.Variable.ID);
                if (_ThreadVariable == null)
                {
                    _ThreadVariable = new sysBpmsThreadVariable()
                    {
                        ThreadID   = this.ThreadID.Value,
                        VariableID = this.Variable.ID,
                        Value      = this.Variable.VarTypeLU == (int)sysBpmsVariable.e_VarTypeLU.DateTime && _DataModel[this.Variable.Name] != null?
                                     Convert.ToDateTime(_DataModel[this.Variable.Name]).ToString(new CultureInfo("en-US")) : _DataModel[this.Variable.Name].ToStringObj(),
                    };
                    return(threadVariableService.Add(_ThreadVariable));
                }
                else
                {
                    _ThreadVariable.ThreadID   = this.ThreadID.Value;
                    _ThreadVariable.VariableID = this.Variable.ID;
                    _ThreadVariable.Value      = this.Variable.VarTypeLU == (int)sysBpmsVariable.e_VarTypeLU.DateTime && _DataModel[this.Variable.Name] != null?
                                                 Convert.ToDateTime(_DataModel[this.Variable.Name]).ToString(new CultureInfo("en-US")) : _DataModel[this.Variable.Name].ToStringObj();

                    return(threadVariableService.Update(_ThreadVariable));
                }
            }
            else
            {
                return(new ResultOperation());
            }
        }
        public void Delete(Guid ID)
        {
            sysBpmsThreadVariable ThreadVariable = this.Context.sysBpmsThreadVariables.FirstOrDefault(d => d.ID == ID);

            if (ThreadVariable != null)
            {
                this.Context.sysBpmsThreadVariables.Remove(ThreadVariable);
                this.Context.SaveChanges();
            }
        }
Example #3
0
        public ResultOperation Update(sysBpmsThreadVariable ThreadVariable)
        {
            ResultOperation resultOperation = new ResultOperation();

            if (resultOperation.IsSuccess)
            {
                this.UnitOfWork.Repository <IThreadVariableRepository>().Update(ThreadVariable);
                this.UnitOfWork.Save();
            }
            return(resultOperation);
        }
        public void Update(sysBpmsThreadVariable threadVariable)
        {
            //To fix 'Attaching an entity failed' error.
            var local = this.Context.Set <sysBpmsThreadVariable>().Local.FirstOrDefault(f => f.ID == threadVariable.ID);

            if (local != null)
            {
                this.Context.Entry(local).State = EntityState.Detached;
                local = null;
            }
            this.Context.Entry(threadVariable.Clone()).State = EntityState.Modified;
        }
 public void Add(sysBpmsThreadVariable ThreadVariable)
 {
     ThreadVariable.ID = Guid.NewGuid();
     this.Context.sysBpmsThreadVariables.Add(ThreadVariable);
 }