Tôi có ứng dụng web dựa trên 3 tầng. Tôi muốn sử dụng Tôi đang sử dụng thử catch khối trong lớp logic kinh doanh của tôi. Có phải sử dụng khối try/catch trong logic nghiệp vụ hay tôi cần sử dụng nó trong lớp giao diện người dùng của tôi?nơi đặt thử/bắt trong kiến trúc 3 tầng
xem mã của tôi cho DAL.
Data Access Layer
#region Insert in to Logbook
public int Insert_LogBook(string Vehicle_Number, DateTime Vehicle_Booking_Date, TimeSpan Time_From, TimeSpan Time_To, int KM_Start, int KM_End, string Vehicle_Used_By, string Cost_Code, string Budget_Line, DateTime Entry_Date)
{
try
{
SqlCommand com = new SqlCommand("Insert_LogBook", con);
com.Parameters.Add("@Vehicle_Number", SqlDbType.NVarChar, 100).Value = Vehicle_Number;
com.Parameters.Add("@Vehicle_Booking_Date", SqlDbType.DateTime).Value = Vehicle_Booking_Date;
com.Parameters.Add("@Time_From", SqlDbType.Time).Value = Time_From;
com.Parameters.Add("@Time_To", SqlDbType.Time).Value = Time_To;
com.Parameters.Add("@KM_Start", SqlDbType.Int).Value = KM_Start;
com.Parameters.Add("@KM_End", SqlDbType.Int).Value = KM_End;
com.Parameters.Add("@Vehicle_Used_Byr", SqlDbType.VarChar, 100).Value = Vehicle_Used_By;
com.Parameters.Add("@Cost_Code", SqlDbType.NVarChar, 50).Value = Cost_Code;
com.Parameters.Add("@Budget_Line", SqlDbType.NVarChar, 50).Value = Budget_Line;
com.Parameters.Add("@Entry_Date", SqlDbType.DateTime).Value = Entry_Date;
con.Open();
int res = com.ExecuteNonQuery();
}
catch (Exception ex)
{
WebMsgBox.Show(ex.Message);
}
finally
{
con.Close();
con.Dispose();
}
return 1;
}
#endregion
Vì vậy, tôi nên sử dụng nó trong bal hoặc trong lớp giao diện người dùng hoặc mã của tôi là ok. bởi vì nếu tôi không sử dụng try/catch trong lớp UI của tôi, nó sẽ không bắt ngoại lệ (nếu có) và hiển thị trang lỗi.
như vậy có thể xin hãy giải thích cách sử dụng mã của tôi? Tôi không sử dụng trong 3 tầng – Gaurav
+1 Trên thông báo lỗi. Tất cả chúng ta đều lớn lên với những thông điệp vô cùng quan trọng, vì vậy chúng tôi nghĩ rằng những thông điệp đó phải có vẻ rất tệ hại. Không. Chúng có vẻ giống như một người bạn giải thích một vấn đề bằng các thuật ngữ đơn giản, thậm chí cung cấp các độ phân giải có thể. –