public async Task <ActionResult <GeoMessageV2_DTO> > PostGeoMessage(GeoMessageV2_Input_DTO message)
        {
            var user = await _context.MyUsers.FindAsync(_userManager.GetUserId(User));

            var newMessage = new GeoMessageV2()
            {
                Title     = message.Title,
                Body      = message.Body,
                Author    = $"{user.FirstName} {user.LastName}",
                Longitude = message.Longitude,
                Latitude  = message.Latitude
            };
            await _context.AddAsync(newMessage);

            await _context.SaveChangesAsync();

            var messageDTO = new GeoMessageV2_DTO
            {
                Message = new Messages
                {
                    Body   = newMessage.Body,
                    Title  = newMessage.Title,
                    Author = newMessage.Author
                },
                Longitude = newMessage.Longitude,
                Latitude  = newMessage.Latitude
            };

            return(CreatedAtAction(nameof(GetGeoMessage), new { id = newMessage.Id }, messageDTO));
        }
 private IEnumerable <GeoMessageV2_DTO> formatV2(IEnumerable <GeoMessageV2> list)
 {
     foreach (var message in list)
     {
         var messageDTO = new GeoMessageV2_DTO
         {
             Message = new Messages {
                 Title = message.Title, Body = message.Body, Author = message.Author
             },
             Longitude = message.Longitude,
             Latitude  = message.Latitude
         };
         yield return(messageDTO);
     }
 }
        private IEnumerable <GeoMessageV2_DTO> formatV1(IEnumerable <GeoMessage> list)
        {
            foreach (var message in list)
            {
                var messageDTO = new GeoMessageV2_DTO
                {
                    Message = new Messages {
                        Title = String.Join(" ", message.Message.Split(" ").Take(3).Select((s, i) => i == 2 ? s.Substring(0, s.Length / 2) : s)),
                        Body  = message.Message, Author = "Bob"
                    },
                    Longitude = message.Longitude,
                    Latitude  = message.Latitude
                };

                yield return(messageDTO);
            }
        }