Share via


SqlCeRemoteDataAccess Class

Initializes a new instance of the SqlCeRemoteDataAccess object. For more information about Remote Data Access, see Using Remote Data Access (RDA).

Namespace:  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Syntax

'Declaration
Public NotInheritable Class SqlCeRemoteDataAccess _
    Implements IDisposable
'Usage
Dim instance As SqlCeRemoteDataAccess
public sealed class SqlCeRemoteDataAccess : IDisposable
public ref class SqlCeRemoteDataAccess sealed : IDisposable
[<SealedAttribute>]
type SqlCeRemoteDataAccess =  
    class
        interface IDisposable
    end
public final class SqlCeRemoteDataAccess implements IDisposable

Remarks

 is not currently optimized to serve as a database for Web sites. By default, connections from -connected applications are blocked in .  is optimized for use as an embedded database within applications. Using 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 , including and later versions, are optimized to serve as a database for Web sites.

 can be used with in application scenarios where is used to create  databases for synchronization scenarios. Use the following code to change the default behavior of to work within .

AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true)

Examples

The following example shows how to initialize a new instance of the SqlCeRemoteDataAccess object.

' Connection String to the SQL Server
'
Dim rdaOleDbConnectString As String = "Data Source=MySqlServer;Initial Catalog=AdventureWorks; " & _
    "User Id=username;Password = <password>"

' Initialize RDA Object
'
Dim rda As SqlCeRemoteDataAccess = Nothing

Try
    ' Try the Pull Operation
    '
    rda = New SqlCeRemoteDataAccess( _
        "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll", _
        "MyLogin", _
        "<password>", _
        "Data Source=MyDatabase.sdf")

    rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString, _
        RdaTrackOption.TrackingOnWithIndexes, "ErrorTable")

    ' or, try one of these overloads:
    ' rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString, _
    '     RdaTrackOption.TrackingOnWithIndexes)
    '
    ' rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString)

Catch
    ' Handle errors here
    '
Finally
    ' Dispose of the RDA object
    '
    rda.Dispose()
End Try
// Connection String to the SQL Server
//
string rdaOleDbConnectString = "Data Source=MySqlServer;Initial Catalog=AdventureWorks; " +
    "User Id=username;Password = <password>";

// Initialize RDA Object
//
SqlCeRemoteDataAccess rda = null;

try
{
    // Try the Pull Operation
    //
    rda = new SqlCeRemoteDataAccess(
        "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll",
        "MyLogin",
        "<password>",
        "Data Source=MyDatabase.sdf");

    rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString,
        RdaTrackOption.TrackingOnWithIndexes, "ErrorTable");

    // or, try one of these overloads:
    //
    // rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString,
    //     RdaTrackOption.TrackingOnWithIndexes);
    //
    // rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString);
}
catch (SqlCeException)
{
    // Handle errors here
    //
}
finally
{
    // Dispose of the RDA object
    //
    rda.Dispose();
}

Inheritance Hierarchy

System. . :: . .Object
  System.Data.SqlServerCe..::..SqlCeRemoteDataAccess

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

SqlCeRemoteDataAccess Members

System.Data.SqlServerCe Namespace