Apr 29, 2005 02:25 PM|smehrotra75|LINK
The last time I checked (and I know it's been a while - from the 2.1.2 days), the differences between the version 2 of the DAAB which the core uses and version 3 (which is what I'm using in Oracle) was not much. In fact I think there were mainly some bug fixes
as well as enhancements to the ADOHelper class. However this was supposed to be backward compatible so all the calls from SQlDataProvider.vb (for the core version) would still work - I think I did try replacing the reference to Microsoft.ApplicationBlocks.Data
in the core to the 3.x version and it did work without any problems for the SQL Server version.
Most of the enhancements to the 3x version of the DAAB were done to support the other databases out there (I know they made some fixes for the Oracle version which was why I went with the 3x version to start with).
To answer some of your questions - Yes the core would still have the same DataProvider base class and we would all call the same ADOHelper class to access the different databases. Having said this, I don't think we'll be able
to do this for every database out there since the ADOHelper class is overwritten for each database and depending on the driver which is used, this would need to include a reference to the particular driver for that database - for example there is a firebird
.NET driver which is what I used to create the ADOHelper class for the firebird version. This is not standard in the 3.x version of MSDAAB but needs to be downloaded separately from Firebird. The same applies to Centura SQLBase which is another database which
I'm writing a provider for. If we include all this within the core, we'll end up bloating the product more than we need to.
As such, here what I think might work.
I see that Kevin just posted something along the same lines as what I'm trying to say here - not sure whether mine makes sense or not.