Descrizione :
Un mio esempio pratico di utilizzo della Libreria DAO 3.6 in .NET.
+ Articolo :
Personalmente non ho mai avuto bisogno di usare DAO in .NET, ma in un paio di occasioni mi è capitato che mi venisse chiesto.
La mia prima reazione a questo tipo di domande è il classico "WTF ?!".
Ma forse proprio per l'originalità della cosa, ho deciso di inserire questo esempio nel Blog.
La Libreria DAO in .NET va anzitutto cercata nei Rif. COM :
Microsoft DAO 3.6 Object Library
L'operazione è la classica apertura e lettura di un Recordset da Tabella Access ( quello che normalmente in .NET si traduce in un DataReader, che oltre ad essere decisamente più corretto, è anche più veloce... ).
--> Codice Esempio :
'... Dim DBE As New DAO.DBEngine Dim DB As DAO.Database Dim RS As DAO.Recordset Dim strSQL As String = "SELECT * FROM Tabella" DB = DBE.OpenDatabase(percorso & nomeDB) RS = DB.OpenRecordset(strSQL, DAO.RecordsetTypeEnum.dbOpenSnapshot) RS.MoveFirst() While Not RS.EOF '... 'Operazioni ... '... RS.MoveNext() End While RS.Close() DB.Close() '...
Come si può notare l'uso non è particolarmente intuituivo nè diretto, perciò il presente articolo
è semplice ma significativo.
Un classico sviluppatore VB6/VBA potrebbe avere non poche difficoltà nell'adattare il proprio
utilizzo di DAO all'ambiente .NET, principalmente per una questione di definizioni nello spazio dei nomi.
Ad esempio, vbOpenSnapshot è un membro Enum che non è definito in .NET, perciò bisogna cercarlo negli Enum del namespace DAO, dove tra l'altro ha cambiato nome, ed è : DAO.RecordsetTypeEnum.dbOpenSnapshot.
Questa ri-definizione dei nomi è abbastanza frequente quando si fa uso di librerie COM in .NET.
+ Fine Articolo.
0 commenti:
Posta un commento