Пример #1
0
        public CacheQuery(MySqlAdapter adapter, string queryTemplate, CacheOptions options)
        {
            this.queryTemplate = queryTemplate;
            this.adapter       = adapter;

            cache = new MemoryCache(new MemoryCacheOptions()
            {
                SizeLimit = options.CacheSize
            });
            entryOptions = new MemoryCacheEntryOptions()
            {
                AbsoluteExpirationRelativeToNow = options.AbsoluteExpirationRelativeToNow,
                SlidingExpiration = options.SlidingExpiration,
                Size = 1
            };
        }
Пример #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="adapter">MySqlAdapter адаптер</param>
        /// <param name="packegeSize">Размер пакета</param>
        /// <param name="table">Таблица для вставки</param>
        /// <param name="insertIgnore">Вставка с игнорированием</param>
        /// <param name="columns">Столбцы</param>
        public InsertBuffer(MySqlAdapter adapter, int packegeSize, string table, bool insertIgnore, params string[] columns)
        {
            this.packegeSize = packegeSize;
            this.adapter     = adapter;

            queryBuilder = new StringBuilder($"INSERT {(!insertIgnore ? "INTO" : "IGNORE")} {table}(", 1000);

            for (int i = 0; i < columns.Length; i++)
            {
                queryBuilder.Append(columns[i]);
                queryBuilder.Append(',');
            }
            queryBuilder.Remove(queryBuilder.Length - 1, 1);
            queryBuilder.Append(") VALUES ");

            leftPartSize = queryBuilder.Length;
        }