Я создаю функцию createFolding
в моем классе с именем clsFolding
. Я вставляю некоторые значения в базу данных с помощью этой функции createFolding
. поэтому я возвращаю int status_id
из функции назад (1, если Ok, 0, если ошибка). Я также хочу вернуть сообщение исключения из функции, если есть ошибка (если status_id =0
), но я не знаю, как вернуть несколько значений из моей функции. Вот мой код, который я сделал в моем классе clsFolding
Как вернуть исключение из функции в классе
public class clsFolding
{
public static string ConStr = ConfigurationManager.ConnectionStrings["FazalConstructions.Properties.Settings.ConnString"].ConnectionString;
public static SqlConnection con;
public static SqlCommand cmd = new SqlCommand();
public static int status_id;
public static Exception ex;
public static int createFolding(int id, string name, int qty, string narration, DateTime dt)
{
try
{
con = new SqlConnection(ConStr);
con.Open();
cmd = new SqlCommand("INSERT INTO tblFolding(FoldingID, Name,Quantity,Narration,DateTime)VALUES(@id, @name, @qty, @narration,@dt)", con);
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@name", name);
cmd.Parameters.AddWithValue("@qty", qty);
cmd.Parameters.AddWithValue("@narration", narration);
cmd.Parameters.AddWithValue("@dt", dt);
cmd.ExecuteNonQuery();
status_id = 1;
return status_id;
}
catch (Exception ex)
{
status_id = 0;
return status_id;
}
вот мой код, который я использовал в своей форме, чтобы получить данные из класса
clsStockManagement.updateStock(int.Parse(TransactionID.Text), int.Parse(projectID.Text), int.Parse(cbItem.SelectedValue.ToString()), int.Parse(tbQty.Text), DateTimee.Value);
if (clsStockManagement.status_id==1)
{
MessageBox.Show("Process Successful", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else if (clsStockManagement.status_id==0)
{
MessageBox.Show("Process UnSuccessful", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
не возвращают исключения, бросить их – Backs
Один популярный подход к этому является один принятый Microsoft для чисел синтаксического анализа. например, int.TryParse (текст, номер) – lzcd
Я не хочу бросать исключение, так как я хочу, чтобы ящик сообщения отображал сообщение об ошибке –