public static TModel FromConfigurationItemKey <TModel>(ConfigurationItemKey configurationItemKey) where TModel : ConfigurationItemKeyApiModel, new() { var model = new TModel(); model.Id = configurationItemKey.Id; model.TenantId = configurationItemKey.TenantId; model.Name = configurationItemKey.Name; return(model); }
public async Task <Response> Handle(Request request) { var entity = await _context.ConfigurationItemKeys .Include(x => x.Tenant) .SingleOrDefaultAsync(x => x.Id == request.ConfigurationItemKey.Id && x.Tenant.UniqueId == request.TenantUniqueId); if (entity == null) { var tenant = await _context.Tenants.SingleAsync(x => x.UniqueId == request.TenantUniqueId); _context.ConfigurationItemKeys.Add(entity = new ConfigurationItemKey() { TenantId = tenant.Id }); } entity.Name = request.ConfigurationItemKey.Name; await _context.SaveChangesAsync(); _bus.Publish(new AddedOrUpdatedConfigurationItemKeyMessage(entity, request.CorrelationId, request.TenantUniqueId)); return(new Response()); }
public AddedOrUpdatedConfigurationItemKeyMessage(ConfigurationItemKey configurationItemKey, Guid correlationId, Guid tenantId) { Payload = new { Entity = configurationItemKey, CorrelationId = correlationId }; TenantUniqueId = tenantId; }
public static ConfigurationItemKeyApiModel FromConfigurationItemKey(ConfigurationItemKey configurationItemKey) => FromConfigurationItemKey <ConfigurationItemKeyApiModel>(configurationItemKey);