private T1 BindRequestExceptionDetails <T1>(Exception exc)
        {
            var response = new BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper <string>();

            response.StatusCode   = 404;
            response.ErrorMessage = exc.InnerException != null ? (exc.InnerException.InnerException != null ? exc.InnerException.InnerException.Message : exc.InnerException.Message) : exc.Message;
            object genericRespone = (T1)Activator.CreateInstance(typeof(T1));
            var    statusCode     = genericRespone.GetType().GetProperty("StatusCode");
            var    errorMessage   = genericRespone.GetType().GetProperty("ErrorMessage");

            if (statusCode != null)
            {
                statusCode.SetValue(genericRespone, response.StatusCode);
            }
            if (statusCode != null)
            {
                errorMessage.SetValue(genericRespone, response.ErrorMessage);
            }

            return((T1)(Object)genericRespone);
        }
        private T1 BindBadRequestDetails <T1>(HttpResponseMessage result) where T1 : class
        {
            var response = new BKIC.SellingPoint.DTO.RequestResponseWrappers.ApiResponseWrapper <string>();

            response.StatusCode   = 400;
            response.ErrorMessage = result.ReasonPhrase;
            object genericRespone = (T1)Activator.CreateInstance(typeof(T1));
            var    statusCode     = genericRespone.GetType().GetProperty("StatusCode");
            var    errorMessage   = genericRespone.GetType().GetProperty("ErrorMessage");

            if (statusCode != null)
            {
                statusCode.SetValue(genericRespone, response.StatusCode);
            }
            if (statusCode != null)
            {
                errorMessage.SetValue(genericRespone, response.ErrorMessage);
            }

            return((T1)(Object)genericRespone);
        }