Ejemplo n.º 1
0
        public IHttpActionResult NewTag(Tag t)
        {
            var user = _repository.GetUserByUserName(User.Identity.Name);

            if (user != null)
            {
                t.UserId = user.UserId;
            }
            else
            {
                t.UserId = new Guid("0e5f76d4-7180-44e9-bc34-ced22a6d2bed");
            }
            t.UpdateDate = DateTime.Now;

            RepositoryActionResult <Tag> result = _repository.AddTag(t);

            switch (result.Status)
            {
            case RepositoryActionStatus.Created:
                return(Content(System.Net.HttpStatusCode.OK, new
                {
                    success = true,
                    newID = result.Entity.Id,
                    Description = result.Entity.Description
                }));

            case RepositoryActionStatus.NothingModified:
                return(Content(System.Net.HttpStatusCode.OK, "Risultato Not Modified?"));    //TODO have I to return OK?

            case RepositoryActionStatus.Error:
                return(Content(System.Net.HttpStatusCode.InternalServerError, result.Exception.InnerException.Message));

            default:
                break;
            }


            return(Content(System.Net.HttpStatusCode.Ambiguous, result.Status.ToString() + " Per il Tag:  " + result.Entity.Description));
        }