I had an older version of SQLite installed previously (from http://sqlite.phxsoftware.com) and now replaced it with the latest (from http://sqlite.org as recommended). I was able to see the older version’s data provider in “Server Explorer” of 2010 and with the new version it’s missing.
I used the installer as admin and selected to have the assemblies GAC installed. After the install I saw in my machine.config that there was no longer a ” entry for SQLite and there was previously. I hand inserted a new one for the new version but it didn’t help.
Hand inserted entry:
<DbProviderFactories>
<add name="SQLite Data Provider" invariant="System.Data.SQLite"
description=".Net Framework Data Provider for SQLite"
type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite, Version=1.0.72.0,
Culture=neutral, PublicKeyToken=db937bc2d44ff139" />
<!-- other entries here -->
</DbProviderFactories>
Now I’m kind of stuck and not sure what to try next or figure out what was the difference between the installs between the two versions. Which could be a large difference since a different group of developers is maintaining this for .Net now.
SQLite can be such a colossal pain in the rear on Windows it’s not even funny. I can’t say I’ve ever dealt with this problem specifically, but I have dealt with SQLite resources not being recognized in the GAC properly. I lost 2 full days to the problem before figuring out that SQL Server 2008 Express Edition will install SQLite utilities along with the default SQL instance and everything else in such a way that Microsoft products readily pick it up. I already had SQL Server 2008 Professional installed on my machine and installing the express instance did not mess up my configuration in the least.
I realize this is totally a workaround, but in the long term your best bet is to move the dll reference to a /Binaries/ folder in the required projects and only use the GAC for Microsoft assemblies. It is abundantly clear that most third parties have no idea how to use the GAC properly (whether this is their fault or Microsoft’s is a question I leave to the philosophers), so unless you want to devote a lot of time to learning its quirks, you are better off using a Binaries folder.