A SqlCeConnection object represents a unique connection to a data source. When you create an instance of SqlCeConnection, all properties are set to their initial values. For a list of these values, see the SqlCeConnection constructor.
If the SqlCeConnection goes out of scope, it is not closed. You must explicitly close the connection by calling Close or Dispose.
SQL Server Compact 3.5 SP1 supports multiple simultaneous connections as well as multiple commands that share the same connection. This means that you can have multiple instances of SqlCeDataReader open on the same connection. This behavior differs from that of System.Data.SqlClient.
If a fatal SqlCeException is generated by the method executing a SqlCeCommand, the SqlCeConnection may be closed. You can reopen the connection and continue.
SQL Server Compact 3.5 SP1 is not currently optimized to serve as a database for Web sites. By default, connections from ASP.NET-connected applications are blocked in SQL Server Compact 3.5 SP1. SQL Server Compact 3.5 SP1 is optimized for use as an embedded database within applications. Using SQL Server Compact 3.5 SP1 as a database for Web sites requires support for multiple users and concurrent data changes. This can cause performance problems. Therefore, these scenarios are not supported. Other editions of SQL Server, including SQL Server Express, are optimized to serve as a database for Web sites.
SQL Server Compact 3.5 SP1 can be used with ASP.NET in application scenarios where ASP.NET is used to create SQL Server Compact 3.5 SP1 databases for synchronization scenarios. Use the following code to change the default behavior of SQL Server Compact 3.5 SP1 to work within ASP.NET.
AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true)