من همیشه سعی میکنم برنامه رو به کلاس های کوچیکتر تقسیم کنم تا کار تیمی راحتتر بشه و کدها از یک قاعده تبعیت کنن.
مثلا یه کلاس واسه کار با تاریخ . یا کلاس واسه اتصال به دیتابیس و انجام اعمال درج و حذف و اجرای تراکنش ها
در زیر یک مثال از توابع کلاس DataBase رو می تونین مشاهده کنین
Public Function BindDataGridView(ByRef DataGrid As DataGridView, ByVal Query As String, ByRef BN As BindingNavigator) As Boolean
If Not OpenDB() Then Return False
Try
Dim ds As New DataSet()
If Not FillDataSet(ds, Query, "table") Then Return False
Dim bs As New BindingSource(ds, "table")
BN.BindingSource = bs
DataGrid.DataSource = bs
CloseDB()
Return True
Catch ex As Exception
Return False
End Try
End Function
'
'یه کوئری رو میگیره و اجراش میکنه
'
Public Function ExecuteNonQuery(ByVal Query As String) As Boolean
Dim cmd As New SqlCommand()
Try
If Not OpenDB() Then Return False
cmd.CommandText = Query
cmd.Connection = Cnn
cmd.ExecuteNonQuery() 'کوئری رو اجرا کن
CloseDB() 'دیتابیس رو ببند
Return True
Catch ex As Exception
Return False
End Try
End Function
منتها این روش نواقص خودش رو داره که محدودیت های خاصی اعمال میکنه. می خوام بدونم دوستان چطور معماری چند لایه رو پیاده میکنن که بتونن از قابلیتهای Cache و Ado.net و ... استفاده کنن؟