Exemplo n.º 1
0
 /// <summary>
 /// Attention ne copie pas le nom
 /// </summary>
 /// <param name="dataext"></param>
 /// <param name="ecraser"></param>
 public void Fusion(ParamValuesNode dataext, bool ecraser = false)
 {
     if (ecraser || this._value == null)
     {
         if (ChangedState == System.Data.DataRowState.Unchanged && this._value != dataext._value)
         {
             ChangedState = System.Data.DataRowState.Modified;
         }
         this._value = dataext._value;
     }
     foreach (var itemd in dataext.Attributs)
     {
         if (ecraser || this[itemd.Key] == "")
         {
             this.SetObject(itemd.Key, itemd.Value);
         }
     }
 }
Exemplo n.º 2
0
 public bool SetData(string nameValue, object obj, DataAccessorOptionEnum AccesOptions)
 {
     if (ChangedState == System.Data.DataRowState.Unchanged)
     {
         ChangedState = System.Data.DataRowState.Modified;                                                     // !!! améliorer pour gérer les cas ou la valeur est identique et donc ne change pas vraiement
     }
     if (string.IsNullOrWhiteSpace(nameValue))
     {
         this._value = obj;
     } // Si vide, c'est qu'il s'agit de l'objet principal
     else
     { // sinon il s'agit d'un attributxml
         if (this.Attributs.ContainsKey(nameValue))
         {
             this.Attributs[nameValue] = obj;
         }
         else
         {
             this.Attributs.Add(nameValue.ToLowerInvariant(), obj);
         }
     }
     return(true);
 }
        /// <summary>
        /// enregistre en base et dans le cache partagé
        /// </summary>
        public void SaveDirectInvoice(DirectInvoice directinvoice)
        {
            try
            {
                // Enregistrement des clef (données persistantes) en bases
                System.Data.DataRowState rowstate = directinvoice.GetRow().RowState;
                if (rowstate == System.Data.DataRowState.Detached || rowstate == System.Data.DataRowState.Added)
                {
                    this.InsertBubble(directinvoice, true, false);
                }
                else
                {
                    this.SaveBubble(directinvoice);
                }

                // Enregistrement des données non persistantes sur MemCached
                if (env != null)
                {
                    StackExchange.Redis.ConnectionMultiplexer redis   = StackExchange.Redis.ConnectionMultiplexer.Connect(GetRedisConfig());
                    StackExchange.Redis.IDatabase             redisDb = redis.GetDatabase();

                    StackExchange.Redis.RedisValue val = directinvoice.ToStringData();
                    StackExchange.Redis.RedisKey   key = directinvoice.IdDirectInvoice;
                    redisDb.StringSet(key, val, null, StackExchange.Redis.When.Always, StackExchange.Redis.CommandFlags.None);



                    // redng75Oj82p

                    // !!! stocker dans memecached
                }
            }
            catch (Exception ex)
            {
                throw new Exception("SaveDirectInvoice " + ex.Message, ex);
            }
        }
Exemplo n.º 4
0
 public void AcceptChange()
 {
     this.ChangedState = System.Data.DataRowState.Unchanged;
 }
Exemplo n.º 5
0
 public AbsStorable()
 {
     State = System.Data.DataRowState.Added;
 }
 public AbsStorable()
 {
     State = System.Data.DataRowState.Added;
 }