I have an app that needs to be able use either an sqlite3 datebase or an mysql database. The customer wants to be able to choose between the two (obviously one would be local and one would be online).
My thoughts for doing this would be by creating a database interface that has all of the common methods (ExecuteReader, ExecuteScalar, etc) then having a SQLite3Database class that extends this interface and a MySQLDatabase class that extends it as well. On app initialization it would create the database interface depending on settings the customer choose.
However if I do this route, then I loose access to the Server Explorer and the simple methods for adding datasets, etc.
So my questions are... Am I going about this the correct way? Is there a better option that I am missing? And if not, how can I get access to the server explorers usability when im creating the data connection points VIA code?
Thanks.