/// <summary>Gets a specific 'OrderDetail' based on it's primary key.</summary>
        public OrderDetailResponse Get(OrderDetailPkRequest request)
        {
            if (Validator != null)
            {
                Validator.ValidateAndThrow(new OrderDetail {
                    OrderId = request.OrderId, ProductId = request.ProductId
                }, "PkRequest");
            }

            OnBeforeGetOrderDetailPkRequest(request);
            var output = Repository.Fetch(request);

            OnAfterGetOrderDetailPkRequest(request, output);
            if (output.Result == null)
            {
                throw new HttpError(HttpStatusCode.NotFound, "NullReferenceException", "OrderDetail matching [OrderId = {0}, ProductId = {1}]  does not exist".Fmt(request.OrderId, request.ProductId));
            }
            return(output);
        }
 partial void OnAfterGetOrderDetailPkRequest(OrderDetailPkRequest request, OrderDetailResponse response);
 partial void OnBeforeGetOrderDetailPkRequest(OrderDetailPkRequest request);