Exemple #1
0
        /// <summary>
        /// DELETE /api/orders/{id}
        /// </summary>
        /// <param name="id"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public HttpResponseMessage Delete(int id, OrderModel model)
        {
            var context = this.DbContext;
            var entity  = context.Orders.Find(id);

            if (entity == null)
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotFound));
            }

            if (!this.User.CanDelete(entity))
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Forbidden));
            }

            // create the web event
            var webEvent = new OrderDeletedEvent(entity);

            // delete the entity
            context.Orders.Remove(entity);

            // persist changes to the database
            context.SaveChanges();

            // fire the web event
            webEvent.Raise();

            return(new HttpResponseMessage(HttpStatusCode.NoContent));
        }
 private void Apply(OrderDeletedEvent e)
 {
     Version = e.Version;
     isDeleted = true;
 }
Exemple #3
0
 private void Apply(OrderDeletedEvent e)
 {
     Version = e.Version;
 }
Exemple #4
0
 private void Apply(OrderDeletedEvent e)
 {
     Version    = e.Version;
     _isDeleted = true;
 }
Exemple #5
0
 public void Handle(OrderDeletedEvent instance)
 {
     // TODO: delete from repository
     // OrderDto order = _unitOfWork.GetRepository<OrderDto>().GetById(instance.EntityId);
     // _unitOfWork.GetRepository<OrderDto>().Delete(order);
 }
Exemple #6
0
 public Task Handle(OrderDeletedEvent evt)
 {
     return(Task.FromResult(false));
 }