Since I woke at 5am and my brain wasn't working properly I decided to waste more time on this error.
I tried more config changes, and I looked inside the SQLite data provider factory with Reflector (hardly any code at all) and it gave no clues. When you change things and nothing happens then Holmes deduces that you're changing the wrong things. I noticed that SQLite comes with two DLLs: System.Data.SQLite and System.Data.SQLite.Linq. I have been referencing the first of course, but not the second. I added the Linq reference and deployed to my server, and it works. The Linq DLL is in the GAC on my dev machine, but it's nowhere on my server, so adding the reference Copy Local brings the file in and it gets deployed. It looks like the SQLite DLL depends upon the Linq DLL for my usage, but if it's missing then you get a completely misleading error message. You *DO NEED* to add a <DbProviderFactory> element to your config file for SQLite, as shown in my previous post. It is unlikely that such a line will be in your machine.config files so you have to add it yourself in that case. Greg
