public List <ViewProduct> InsertProduct(ViewProduct product) { var data = _mapper.Map <Product>(product); _productRepository.Insert(data, true); //Insert Redis var cacheKey = string.Format(ProductDetail, data.Id); var model = _mapper.Map <ViewProduct>(data); model.SeriNo = product.SeriNo; //SeriNo Decrypt olaraka atanır. _redisCacheManager.Set(cacheKey, model); //------------------------------- //Add RabbitMQ ExchangeQueue queueData = new ExchangeQueue() { ProductID = data.Id, Name = data.Name, ExchangeName = ((ExchangeParseType)data.ExchangeType).ToString(), ExchangeType = data.ExchangeType, Price = data.Price, ConnectionID = product.ConnectionId, TotalCount = data.TotalCount, SeriNo = product.SeriNo }; _rabbitMQService.Post("product", queueData); //------------------------ var responseData = GetProductList(); return(responseData); }
/// <summary> /// Applies all externally defined queue properties to all defined exchange queues. /// </summary> /// <param name="exchange">Exchange configuration.</param> public void ApplyQueueSettings(IMessageExchange exchange) { Check.NotNull(exchange, nameof(exchange)); foreach (QueuePropertiesSettings queueProps in GetBrokerQueueProperties(exchange.BrokerName)) { ExchangeQueue queue = exchange.Queues.FirstOrDefault(q => q.QueueName == queueProps.QueueName); if (queue != null) { queue.RouteKeys = queueProps.RouteKeys.ToArray(); } } }
public async Task <ActionResult> PushProduct([FromBody] ExchangeQueue productQueue) { try { System.Threading.Thread.Sleep(2000); //:) Hahahaha ViewProduct product = _mapper.Map <ViewProduct>(productQueue); product = _productService.UpdateProduct(product).FirstOrDefault(p => p.ID == product.ID); await _dispatcher.PushProduct(product); } catch (System.Exception ex) { int i = 0; } return(Ok()); }