Quelle est la meilleure façon de coder les fonctions d'accès aux données génériques suivants (ADO.NET, C# ou VB, SQL Server ou OLEDB)Data Access générique fonctionne
- Exécuter SQL sur une connexion
- Ouvrir un DataReader
- Ouvrir un DataSet (des idées sur celui-ci?)
ce que je peux appeler ces fonctions partout dans mon programme. Les modèles d'accès aux données ou les couches d'accès aux données ne m'intéressent pas, à moins qu'ils ne s'appliquent directement à ces fonctions. (Soit un motif pour fermer automatiquement la connexion ou le lecteur/jeu de données)
Exemples d'utilisation
ExecuteSQL("UPDATE tblTest SET x = 5 WHERE [ID] = 4") Using rdr As OleDb.OleDbDataReader = OpenReader("SELECT * FROM tblExecute") While rdr.Read() End While End Using
Exemple Fonctions
Public Function ExecuteSQL(ByVal strSQL As String) As Boolean Using cn As New OleDb.OleDbConnection(strConn) cn.Open() Using cmd As New OleDb.OleDbCommand(strSQL, cn) Return cmd.ExecuteNonQuery() > 0 End Using End Using Return False End Function Public Function OpenReader(ByVal strSQL As String) As OleDb.OleDbDataReader Dim cn As New OleDb.OleDbConnection(strConn) cn.Open() If cn.State = ConnectionState.Open Then Dim cmd As New OleDb.OleDbCommand(strSQL, cn) Return cmd.ExecuteReader(CommandBehavior.CloseConnection) Else Throw New Exception("Unable to connect to database.") End If End Function