public HttpResponseMessage Put(int expertiseId, LanguageExpertiseApiModel model)
        {
            if (expertiseId == 0 || model == null)
                return Request.CreateResponse(HttpStatusCode.BadRequest);

            var updateLanguageExpertiseCommand = Mapper.Map<UpdateLanguageExpertise>(model);
            updateLanguageExpertiseCommand.UpdatedOn = DateTime.UtcNow;
            updateLanguageExpertiseCommand.Principal = User;
            _updateLanguageExpertise.Handle(updateLanguageExpertiseCommand);

            return Request.CreateResponse(HttpStatusCode.OK);
        }
        public HttpResponseMessage Post(LanguageExpertiseApiModel model)
        {
            if (model == null)
                return Request.CreateResponse(HttpStatusCode.BadRequest);

            var createLanguageExpertiseCommand = new CreateLanguageExpertise(
                User,
                model.SpeakingProficiency,
                model.ListeningProficiency,
                model.ReadingProficiency,
                model.WritingProficiency)
            {
                LanguageId = model.LanguageId,
                Dialect = model.Dialect,
                Other = model.Other
            };

            _createLanguageExpertise.Handle(createLanguageExpertiseCommand);

            var response = Request.CreateResponse(HttpStatusCode.Created, "Language expertise was successfully created.");
            var url = Url.Link(null, new
            {
                controller = "LanguageExpertise",
                action = "Get",
                expertiseId = createLanguageExpertiseCommand.CreatedLanguageExpertiseId,
            });
            Debug.Assert(url != null);
            response.Headers.Location = new Uri(url);
            return response;
        }