コード例 #1
0
        public IActionResult AddMyPlaces(Model.Place place)
        {
            var userId = new Guid(this.User.FindFirstValue(ClaimTypes.NameIdentifier));
            var entity = new Entity.Place(place.Latitude, place.Longitude, place.Note, userId);

            _dbContext.Places.Add(entity);
            _dbContext.SaveChanges();
            var result = new JsonResult(new Model.Place(entity));

            result.StatusCode = 201;
            return(result);
        }
コード例 #2
0
        public IActionResult UpdateMyPlaces(int id, Model.Place place)
        {
            // TODO: Concurrency.
            var userId = new Guid(this.User.FindFirstValue(ClaimTypes.NameIdentifier));
            var entity = _dbContext.Places.Find(id);

            // Only admins can update other users places.
            if (!IsAllowed(entity))
            {
                return(new UnauthorizedResult());
            }

            entity.Lat         = place.Latitude;
            entity.Lng         = place.Longitude;
            entity.Note        = place.Note;
            entity.UpdatedById = userId;
            entity.UpdatedOn   = DateTime.UtcNow;
            _dbContext.SaveChanges();

            return(new JsonResult(new Model.Place(entity)));
        }