public HttpResponseMessage Post(string postcodeAreaReference, PostcodeDistrict postcodeDistrict)
        {
            Check.If(postcodeAreaReference).IsNotNullOrEmpty();
            Check.If(postcodeDistrict).IsNotNull();

            var result = _postcodeDistrictService
                .CreatePostcodeDistrict(postcodeAreaReference,
                    Mapper.Map<Core.Objects.PostcodeDistrict>(postcodeDistrict));

            if (result == null)
            {
                return new HttpResponseMessage {StatusCode = HttpStatusCode.InternalServerError};
            }

            var response = new HttpResponseMessage {StatusCode = HttpStatusCode.Created};

            response.Headers.Location =
                new Uri(Url.Link("GetPostcodeDistrict", new {postcodeAreaReference, postcodeDistrictReference = result}));

            return response;
        }
        public HttpResponseMessage Put(string postcodeAreaReference, string postcodeDistrictReference,
            PostcodeDistrict postcodeDistrict)
        {
            Check.If(postcodeAreaReference).IsNotNullOrEmpty();
            Check.If(postcodeDistrictReference).IsNotNullOrEmpty();
            Check.If(postcodeDistrict).IsNotNull();

            var result = _postcodeDistrictService.UpdatePostcodeDistrict(postcodeAreaReference,
                postcodeDistrictReference, Mapper.Map<Core.Objects.PostcodeDistrict>(postcodeDistrict));

            return result
                ? new HttpResponseMessage {StatusCode = HttpStatusCode.OK}
                : new HttpResponseMessage {StatusCode = HttpStatusCode.InternalServerError};
        }