Es klingt  durch geknallt – ist es wahrscheinlich auch – man weiß nicht ganz ob es lizenzrechtlich ok ist. Aber mich hat einfach gereizt ob es geht. Und ja es geht!

Der einzige logische Anwendungsfall der mir einfällt wäre eine durch xcopy installierbare Webanwendung zu haben die bei einem externen Hoster ohne SQL Server 2005/2008 läuft.

SQL Compact mit xcopy zu deployen ist aber etwas das auch nicht ganz trivial ist – das werde ich mir ein andermal anschauen.

Einfach eine .sdf Datei ins Webprojekt.  Dann eine GridView über den Wizard verbinden.

Und dann geht’s nicht – man bekommt folgende Meldung:

SQL Server Compact is not intended for ASP.NET development.

Ok eigentlich logisch. – Aber dann habe ich zu suchen begonnen und bin auf folgendes gekommen:

Man braucht eine Global.asax in der es eine Zeile geben muss damit der SQL Server Compact auch im IIS läuft.

void Application_Start(object sender, EventArgs e)

{       

   AppDomain.CurrentDomain.SetData(“SQLServerCompactEditionUnderWebHosting”, true);

}

Achtung abhängig von der Version des SQL Ce habe ich unterschiedlich Versionen des keys gefunden, der von mir verwendete ist der richtige für SQL Compact 3.5.

Dazu gibts einen guten Post in einem Blog.

Dann kann man schon auf eine IIS deployen. Allerdings muss in der Web.Config noch der Pfad angepasst werden zur .sdf Datei.