This thread looks to be a little on the old side and therefore may no longer be relevant. Please see if there is a newer thread on the subject and ensure you're using the most recent build of any software if your question regards a particular product. Otherwise - post away!
We just deployed an application (in-house) using the ClickOnce platform. The application references Mindscape.dll (the 6/9 build of the v4.0 beta) but doesn't really use it yet. We are not doing any database access, just using 2 or 3 entities that are defined in the yet-to-be-finished web service facing a real database. (It's an interim release.)
Now, I could swear I tried this last week and it worked, but you know how memory is. The application refused to load, saying it could not find SqlServerCE in the GAC. After some digging, we found where the DLL was referenced in our application, but we have never referenced this in our app -- this has always been a completely client-side application, and we are adding database access via Mindscape. I did have SQL Server CE loaded at one time on my development machine, but it has been uninstalled for many months now.
My question is this -- is there any way Mindscape is referencing SQL Server CE? My thought is we may be picking up the requirement from the included Mindscape library, so just thought I'd ask.
Thanks for any feedback,
Yes, the LightSpeed core DLL has a reference to SQL Server CE. However, it never *uses* that DLL unless you actually use the CE provider, so you can exclude this from the ClickOnce manifest. See Project > Properties > Publish tab > Application Files button to do this.
In fact I believe ClickOnce will by default bring in all the ADO.NET DLLs that LightSpeed references, most of which will be irrelevant to you, so you can exclude them too and may see improved download times as a result.