Exemple #1
0
        public ActionResult Create(CreateCourseModel courseModel)
        {
            if (ModelState.IsValid)
            {
                Course course = new Course();
                //set creator to current user
                course.Creator = db.UserProfiles.Find(WebSecurity.CurrentUserId);
                course.Members = new List <UserProfile>();
                course.Members.Add(course.Creator);

                course.Description = courseModel.Description;
                course.Name        = courseModel.Name;
                course.Image       = courseModel.Image.FileName;

                course             = db.Courses.Add(course);
                course.DateCreated = DateTime.Now;

                //persist changes and refresh so we get an courseId
                course.DateCreated = DateTime.Now;

                db.SaveChanges();
                db.Entry(course).GetDatabaseValues();

                course.Image = FileHelper.SaveFile(courseModel.Image, "Course", course.Id.ToString());

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(courseModel));
        }
        // PUT api/File/5
        public HttpResponseMessage PutFile(int id, CourseAider.Models.File file)
        {
            if (!ModelState.IsValid)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }

            if (id != file.Id)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            db.Entry(file).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.NotFound, ex));
            }

            return(Request.CreateResponse(HttpStatusCode.OK));
        }