コード例 #1
0
        public void Insert <TRow>(string tableName, TRow row) where TRow : class, new()
        {
            var tableLock = GetTableLock(tableName);

            Utils.LockedAction(tableLock, () =>
            {
                var rowSting = _serializer.SerializeRow(row);
                if (string.IsNullOrWhiteSpace(rowSting))
                {
                    return;
                }
                var tableFilePath = GetTableFilePath(tableName);
                _cacheProvider.Insert(tableName, row);
                File.AppendAllText(tableFilePath, rowSting);
            });
        }