コード例 #1
0
        public ActionResult Create(StudentEditViewmodel student)
        {
            try
            {
                using (SqlConnection conn = Connection)
                {
                    conn.Open();
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = @"INSERT INTO Student (FirstName, LastName, SlackHandle, CohortId)
                                            OUTPUT INSERTED.Id
                                            VALUES (@firstName, @lastName, @slackHandle, @cohortId)";

                        cmd.Parameters.Add(new SqlParameter("@firstName", student.FirstName));
                        cmd.Parameters.Add(new SqlParameter("@lastName", student.LastName));
                        cmd.Parameters.Add(new SqlParameter("@slackHandle", student.SlackHandle));
                        cmd.Parameters.Add(new SqlParameter("@cohortId", student.CohortId));

                        var id = (int)cmd.ExecuteScalar();
                        student.StudentId = id;

                        return(RedirectToAction(nameof(Index)));
                    }
                }
            }
            catch (Exception ex)
            {
                return(View());
            }
        }
コード例 #2
0
        // GET: Students/Create
        public ActionResult Create()
        {
            var cohortOptions = GetCohortOptions();
            var viewModel     = new StudentEditViewmodel()
            {
                CohortOptions = cohortOptions
            };

            return(View(viewModel));
        }
コード例 #3
0
        // GET: Students/Edit/5
        public ActionResult Edit(int id)
        {
            var student       = GetStudentById(id);
            var cohortOptions = GetCohortOptions();
            var viewModel     = new StudentEditViewmodel()
            {
                StudentId     = student.Id,
                FirstName     = student.FirstName,
                LastName      = student.LastName,
                CohortId      = student.CohortId,
                SlackHandle   = student.SlackHandle,
                CohortOptions = cohortOptions
            };

            return(View(viewModel));
        }
コード例 #4
0
        public ActionResult Edit(int id, [FromForm] StudentEditViewmodel student)
        {
            try
            {
                using (SqlConnection conn = Connection)
                {
                    conn.Open();
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = @"UPDATE Student 
                                            SET FirstName = @firstName, 
                                                LastName = @lastName, 
                                                SlackHandle = @slackHandle, 
                                                CohortId = @cohortId
                                            WHERE Id = @id";

                        cmd.Parameters.Add(new SqlParameter("@firstName", student.FirstName));
                        cmd.Parameters.Add(new SqlParameter("@lastName", student.LastName));
                        cmd.Parameters.Add(new SqlParameter("@slackHandle", student.SlackHandle));
                        cmd.Parameters.Add(new SqlParameter("@cohortId", student.CohortId));
                        cmd.Parameters.Add(new SqlParameter("@id", id));

                        var rowsAffected = cmd.ExecuteNonQuery();

                        if (rowsAffected < 1)
                        {
                            return(NotFound());
                        }
                    }
                }

                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                return(View());
            }
        }