public ResultViewModel <TrackCourseEditViewModel> Update(TrackCourseEditViewModel TrackCourse)
        {
            ResultViewModel <TrackCourseEditViewModel> result
                = new ResultViewModel <TrackCourseEditViewModel>();

            try
            {
                if (!ModelState.IsValid)
                {
                    result.Message = "In Valid Model State";
                }
                else
                {
                    TrackCourseEditViewModel selectedEmp
                        = TrackCourseService.Update(TrackCourse);

                    result.Successed = true;
                    result.Data      = selectedEmp;
                }
            }
            catch (Exception ex)
            {
                result.Successed = false;
                result.Message   = "Semething Went Wrong";
            }
            return(result);
        }
        public ResultViewModel <TrackCourseEditViewModel> Post(TrackCourseEditViewModel TrackCourse)
        {
            ResultViewModel <TrackCourseEditViewModel> result
                = new ResultViewModel <TrackCourseEditViewModel>();

            try
            {
                if (!ModelState.IsValid)
                {
                    result.Message = "In Valid Model State";
                }
                else
                {
                    TrackCourseEditViewModel selectedTrackCourse
                        = TrackCourseService.Add(TrackCourse);

                    var Users = userTrackService.GetAll().Where(i => i.TrackID == TrackCourse.TrackID).Select(i => i.UserID);

                    Hub.Clients.All.NewCourseAdded(new
                    {
                        Users,
                        CourseName = courseService.GetByID(TrackCourse.CourseID).Name,
                        TrackName  = TrackService.GetByID(TrackCourse.TrackID).Name
                    });


                    result.Successed = true;
                    result.Data      = selectedTrackCourse;
                }
            }
            catch (Exception ex)
            {
                result.Successed = false;
                result.Message   = "Semething Went Wrong";
            }
            return(result);
        }