/// <summary> /// Get the current published version for the given aggregate /// </summary> /// <param name="processorName"></param> /// <param name="aggregateRootTypeName"></param> /// <param name="aggregateRootId"></param> /// <returns></returns> public async Task <int> GetPublishedVersionAsync(string processorName, string aggregateRootTypeName, string aggregateRootId) { var db = _connection.GetDatabase(); var item = await db.HashGetAllAsync(GetPublishedVersionKey(processorName, aggregateRootId)); if (item == null || item.Length < 2 || item.First(f => f.Name == _typeField).Value != aggregateRootTypeName) { return(0); } var version = (int)item.First(f => f.Name == _verField).Value; return(version); }
public UtilRepository(CatDbContext context, StackExchange.Redis.IConnectionMultiplexer connection) : base(context) { _database = connection.GetDatabase(); }