Ejemplo n.º 1
0
        public EnumColumnDictionary()
        {
            ITypeProvider typeProvider = TypeProviderFactory.Get(typeof(T));

            _comparer = new EqualityComparerAdapter <T>((IXArrayComparer <T>)typeProvider.TryGetComparer());
            _copier   = (IValueCopier <T>)typeProvider.TryGetCopier();
            Reset(HashCore.SizeForCapacity(256));
        }
Ejemplo n.º 2
0
            public ulong GetHashCode(T x)
            {
                ulong hash;

                if (x is IEnumerable <byte> byteArr)
                {
                    hash = HashCore.RolloutHash32(byteArr, prime);
                }
                else if (x is IEnumerable <sbyte> sbyteArr)
                {
                    hash = HashCore.RolloutHash32(sbyteArr, prime);
                }
                else if (x is IEnumerable <ushort> usArr)
                {
                    hash = HashCore.RolloutHash32(usArr, prime);
                }
                else if (x is IEnumerable <short> sArr)
                {
                    hash = HashCore.RolloutHash32(sArr, prime);
                }
                else if (x is IEnumerable <uint> uiArr)
                {
                    hash = HashCore.RolloutHash32(uiArr, prime);
                }
                else if (x is IEnumerable <int> iArr)
                {
                    hash = HashCore.RolloutHash32(iArr, prime);
                }
                else if (x is IEnumerable <ulong> ulArr)
                {
                    hash = HashCore.RolloutHash32(ulArr, prime);
                }
                else if (x is IEnumerable <long> lArr)
                {
                    hash = HashCore.RolloutHash32(lArr, prime);
                }
                else if (x is IEnumerable <char> cArr)
                {
                    hash = HashCore.RolloutHash32(cArr, prime);
                }
                else if (x is IEnumerable <string> strArr)
                {
                    hash = HashCore.RolloutHash32(strArr, prime);
                }
                // else if (x is string str) return HashHelpers.RolloutHash32(str, prime);
                else
                {
                    hash = (ulong)x.GetHashCode();
                }

                return(HashCore.Mix64(hash, rnd));
            }
Ejemplo n.º 3
0
        public Message Update(StudentVM student)
        {
            var res = new Message();

            try
            {
                if (student.ID > 0)
                {
                    using (var context = new ModeloAula())
                    {
                        var objstudent = context.STUDENTs.AsQueryable().Where(x => x.ID == student.ID).FirstOrDefault();

                        if (objstudent != null)
                        {
                            objstudent.NAME              = student.Name;
                            objstudent.LASTNAME          = student.LastName;
                            objstudent.PWD               = student.PWD;
                            objstudent.EMAIL             = student.Email;
                            objstudent.STATUS_ITEM       = student.Status;
                            objstudent.MODIFICATION_DATE = DateTime.Now;
                            student.Token = objstudent.TOKEN = HashCore.Token();
                        }

                        context.Entry(objstudent).State = EntityState.Modified;
                        context.SaveChanges();

                        res.status_item = true;
                        res.details     = JsonConvert.SerializeObject(student, Formatting.None);
                    }
                }
                else
                {
                    res.status_item = false;
                    res.details     = String.Format("* Incidencia veríficar id usuario");
                }
            }
            catch (Exception ex)
            {
                res.details = String.Format("* Incidencia al crear usuario detalles:{0}", ex.Message);
            }
            return(res);
        }
Ejemplo n.º 4
0
        protected override void Expand()
        {
            // Save the current Keys/Values/Metadata
            T[]    oldKeys      = _keys;
            int[]  oldValues    = _values;
            byte[] oldMetaData  = this.Metadata;
            int    oldNullIndex = _nullItemIndex;

            // Expand the table
            Reset(HashCore.ResizeToSize(_keys.Length));

            // Add items to the enlarged table
            for (int i = 0; i < oldMetaData.Length; ++i)
            {
                if (oldMetaData[i] > 0)
                {
                    Add(oldKeys[i], oldValues[i], i == oldNullIndex);
                }
            }
        }