أرجو منكم المساعدة.. لماذا يظهر لي الخطأ أعلاه؟ هذا هو الكود.. ولاحظت عندما أحذف try..catch..finally كل شئ يعمل على ما يرام.. فما المشكلة؟
try
{
sql_connection = new MySqlConnection(ConfigurationManager.ConnectionStrings["SQLdb"].ConnectionString);
sql_connection.Open();
if (RouteData.Values["GUID"].ToString() == "New") sql_command = new MySqlCommand("sp_add_new_channel", sql_connection);
else sql_command = new MySqlCommand("sp_update_channel", sql_connection);
sql_command.CommandType = CommandType.StoredProcedure;
if (RouteData.Values["GUID"].ToString() == "New") sql_command.Parameters.AddWithValue("param_member_id", Convert.ToInt32(Session["member_id"])).MySqlDbType = MySqlDbType.Int32;
else sql_command.Parameters.AddWithValue("param_channel_guid", RouteData.Values["GUID"].ToString()).MySqlDbType = MySqlDbType.VarChar;
sql_command.Parameters.AddWithValue("param_channel_name", txtChannelName.Text.Trim()).MySqlDbType = MySqlDbType.VarChar;
sql_command.Parameters.AddWithValue("param_channel_address", txtChannelAddress.Text.Trim()).MySqlDbType = MySqlDbType.VarChar;
sql_command.Parameters.AddWithValue("param_channel_language", Convert.ToInt32(cboLanguage.Value)).MySqlDbType = MySqlDbType.Int32;
sql_command.Parameters.AddWithValue("param_channel_description", txtChannelDescription.Text.Trim()).MySqlDbType = MySqlDbType.VarChar;
sql_command.Parameters.AddWithValue("param_channel_allow_comment", chkAllowComment.Checked).MySqlDbType = MySqlDbType.Bit;
sql_command.Parameters.AddWithValue("param_channel_allow_like", chkAllowLikeIt.Checked).MySqlDbType = MySqlDbType.Bit;
sql_command.Parameters.AddWithValue("param_channel_allow_share", chkAllowShare.Checked).MySqlDbType = MySqlDbType.Bit;
sql_command.Parameters.AddWithValue("param_show_profile_photo", chkShowProfilePhoto.Checked).MySqlDbType = MySqlDbType.Bit;
if (RouteData.Values["GUID"].ToString() == "New") sql_command.Parameters.Add("param_channel_guid", MySqlDbType.VarChar).Direction = ParameterDirection.Output;
sql_command.Parameters.Add("param_is_exist", MySqlDbType.Bit).Direction = ParameterDirection.Output;
// execute the query;
int result_rows = sql_command.ExecuteNonQuery();
if (Convert.ToBoolean(sql_command.Parameters["param_is_exist"].Value) != true)
{
// member_id = sql_command.Parameters["param_record_identity"].Value.ToString();
// member_guid = sql_command.Parameters["param_record_guid"].Value.ToString();
// activation_code = sql_command.Parameters["param_activation_code"].Value.ToString();
website_event_log.add_event_log("Membership", txtChannelName.Text.Trim(), "You have successfully signed up");
Response.Redirect("~/Channels", true);
}
else
{
Session["message_title"] = "Error";
Session["message_title_Color"] = Color.Red.ToArgb();
Session["message_text"] = "The same channel address already exists. Please try another address.";
Session["message_button_title"] = "Back";
Session["message_button_url"] = Request.UrlReferrer.ToString();
Response.Redirect("~/Message", false);
}
}
catch (Exception exp)
{
Session["message_title"] = "ERROR..";
Session["message_text"] = String.Format("Please try again.......{0}{1}", "", exp.Message);
Session["message_button_title"] = "Back to Sign-in";
Session["message_button_url"] = Request.UrlReferrer.ToString();
Response.Redirect("~/Message", false);
}
finally
{
// if (sql_reader != null) sql_reader.Close();
if (sql_connection != null)
{
if (sql_connection.State == ConnectionState.Open)
sql_connection.Close();
}
}