コード例 #1
0
        public HttpResponseMessage Post([FromBody] GlossaryDto glossary)
        {
            if ((glossary == null))
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, new BaseApiResponse
                {
                    Code = InternalApiStatusCode.Error,
                    Message = "Invalid glossary object"
                }));
            }

            if (string.IsNullOrEmpty(glossary.Definition) || string.IsNullOrEmpty(glossary.Term))
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, new BaseApiResponse
                {
                    Code = InternalApiStatusCode.FailedRequestValidation,
                    Message = "Invalid glossary object"
                }));
            }

            var glossaryResposne = new GlossaryResponse();

            try
            {
                if (_glossaryRepository.FindTerm(glossary.Term.Trim()))
                {
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, new BaseApiResponse
                    {
                        Code = InternalApiStatusCode.Conflict,
                        Message = "Glossary item already exists !"
                    }));
                }


                var glossaryResult = _glossaryRepository.Add(glossary);

                glossaryResposne.Glossary = glossaryResult;
                glossaryResposne.Code     = InternalApiStatusCode.Success;

                return(Request.CreateResponse(HttpStatusCode.Created, glossaryResposne));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
コード例 #2
0
        public HttpResponseMessage Put(int id, [FromBody] GlossaryRequest glossary)
        {
            if (string.IsNullOrEmpty(glossary.Definition) || string.IsNullOrEmpty(glossary.Term))
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, new BaseApiResponse
                {
                    Code = InternalApiStatusCode.FailedRequestValidation,
                    Message = "Invalid glossary object"
                }));
            }

            var glossaryResposne = new GlossaryResponse();

            try
            {
                var glossaryResult = _glossaryRepository.Update(new GlossaryDto
                {
                    GlossaryId = id,
                    Definition = glossary.Definition,
                    Term       = glossary.Term
                });

                if (glossaryResult == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.NotFound, new BaseApiResponse
                    {
                        Code = InternalApiStatusCode.Error,
                        Message = "Glossary item is not found"
                    }));
                }

                glossaryResposne.Glossary = glossaryResult;
                glossaryResposne.Code     = InternalApiStatusCode.Success;
                glossaryResposne.Message  = "Glossary item updated";

                return(Request.CreateResponse(HttpStatusCode.OK, glossaryResposne));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
コード例 #3
0
        public HttpResponseMessage Get(int id)
        {
            if (id <= 0)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, new BaseApiResponse
                {
                    Code = InternalApiStatusCode.FailedRequestValidation,
                    Message = "Couldn't read Card Number or it is not found"
                }));
            }


            var glossaryResposne = new GlossaryResponse();

            try
            {
                var glossary = _glossaryRepository.Get(id);

                if (glossary == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.NotFound, new BaseApiResponse
                    {
                        Code = InternalApiStatusCode.Error,
                        Message = "glossary item is not found"
                    }));
                }

                glossaryResposne.Glossary = glossary;
                glossaryResposne.Code     = InternalApiStatusCode.Success;
                glossaryResposne.Message  = "Glossary item added";


                return(Request.CreateResponse(HttpStatusCode.OK, glossaryResposne));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }