在MVC 4中的控制器动作中应用try catch?

时间:2013-08-18 07:56:10

标签: asp.net-mvc-4 try-catch sqlconnection

这是我的代码,其中用户插入数据库中。 请告诉我应用try catch块的位置,以防止在这种情况下发生任何类型的异常。

if (ModelState.IsValid)
        {
            user.Type = 'J';
            user.DateOfJoining = DateTime.Now;
            using (SqlConnection connection = new SqlConnection(WebConfigurationManager.ConnectionStrings["DefaultConnectionString"].ToString()))
            {
                using (SqlCommand command = new SqlCommand("SignupUser", connection))
                {
                    command.CommandType = System.Data.CommandType.StoredProcedure;
                    command.Parameters.AddWithValue("@FirstName",user.FirstName);
                    command.Parameters.AddWithValue("@LastName",user.LastName);
                    command.Parameters.AddWithValue("@Email",user.Email);
                    command.Parameters.AddWithValue("@Password",user.Password);
                    command.Parameters.AddWithValue("@Mobile",user.Mobile);
                    command.Parameters.AddWithValue("@City",user.City);
                    command.Parameters.AddWithValue("@StateProvince",user.StateProvince);
                    command.Parameters.AddWithValue("@Country",user.Country);
                    command.Parameters.AddWithValue("@Type",user.Type);
                    command.Parameters.AddWithValue("@DateOfJoining",user.DateOfJoining);
                    connection.Open();
                    int result = command.ExecuteNonQuery();
                    connection.Close();
                    return RedirectToAction("account");
                }
            }
        }

1 个答案:

答案 0 :(得分:0)

if块中的所有代码都应该在try catch块中,以便在第一个使用块中捕获与数据库连接的异常。