public ActionResult AssignDev(AssignDeveloperViewModel devVM)
        {
            if (ModelState.IsValid)
            {
                var tkt    = db.Tickets.Find(devVM.ticket.Id);
                var oldTkt = db.Tickets.AsNoTracking().Where(m => m.Id == tkt.Id).FirstOrDefault();
                tkt.AssignedUserId = devVM.SelectedUser;
                db.SaveChanges();

                if (oldTkt.AssignedUserId != tkt.AssignedUserId)
                {
                    TicketHistory tHistory = new TicketHistory();
                    tHistory.ChangedDate = DateTimeOffset.Now;
                    tHistory.Property    = "Assigned User";
                    tHistory.OldValue    = db.Users.Find(oldTkt.AssignedUserId).FullName;
                    tHistory.NewValue    = db.Users.Find(tkt.AssignedUserId).FullName;
                    tHistory.TicketId    = tkt.Id;
                    tHistory.UserId      = User.Identity.GetUserId();

                    db.TicketHistories.Add(tHistory);
                    db.SaveChanges();
                }
                return(RedirectToAction("Details", "Projects", new { id = tkt.ProjectId }));
            }
            return(View(devVM.ticket.Id));
        }
        public ActionResult AssignDev(int?ticketId)
        {
            AssignDeveloperViewModel vm = new AssignDeveloperViewModel();
            ProjectHelper            ph = new ProjectHelper();

            var tkt  = db.Tickets.Find(ticketId);
            var devs = ph.ProjectUsersByRole(tkt.ProjectId, "Developer");

            vm.DevUsers = new SelectList(devs, "Id", "FullName");
            vm.ticket   = tkt;

            return(View(vm));
        }