public ActionResult Create(TrailMeetCreate model)
        {
            var userId = Guid.Parse(User.Identity.GetUserId());

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var service = CreateTrailMeetService();

            if (service.CreateTrailMeet(model))
            {
                TempData["SaveResult"] = "Your Meet up was Created.";
                return(RedirectToAction("Index"));
            }
            ;
            ModelState.AddModelError("", "Trail Meetup could not be Created.");
            ViewBag.TrailTrackerID = new SelectList(service.GetTrails(), "TrailTrackerID", "TrailName", model.TrailTrackerID);
            return(View(model));
        }
        public bool CreateTrailMeet(TrailMeetCreate model)
        {
            if (model.Upload != null && model.Upload.ContentLength > 0)
            {
                var avatar = new Photo
                {
                    PhotoName   = System.IO.Path.GetFileName(model.Upload.FileName),
                    FileType    = FileType.Picture,
                    ContentType = model.Upload.ContentType
                };
                using (var reader = new System.IO.BinaryReader(model.Upload.InputStream))
                {
                    avatar.Content = reader.ReadBytes(model.Upload.ContentLength);
                }
                model.Files = new List <Photo> {
                    avatar
                };
            }
            var entity =
                new TrailMeet()
            {
                OwnerID        = _userId,
                TrailTrackerID = model.TrailTrackerID,
                OfTrailType    = model.OfTrailType,
                Picture        = model.Picture,
                MeetTime       = model.MeetTime,
                MeetComments   = model.MeetComments,
                CreatedUtc     = DateTimeOffset.Now,
                Files          = model.Files,
                Upload         = model.Upload
            };

            using (var ctx = new ApplicationDbContext())
            {
                ctx.TrailMeets.Add(entity);
                return(ctx.SaveChanges() >= 1);
            }
        }