SqlCeReplication.AddSubscription 方法

创建现有 Microsoft SQL Server 发布的新的匿名订阅。调用 AddSubscription 方法后,应用程序必须调用 Synchronize 方法,根据最新的快照将新的订阅同步到发布中。

命名空间: System.Data.SqlServerCe
程序集: System.Data.SqlServerCe(在 system.data.sqlserverce.dll 中)

语法

声明
Public Sub AddSubscription ( _
    addOption As AddOption _
)
用法
Dim instance As SqlCeReplication
Dim addOption As AddOption

instance.AddSubscription(addOption)
public void AddSubscription (
    AddOption addOption
)
public:
void AddSubscription (
    AddOption addOption
)
public void AddSubscription (
    AddOption addOption
)
public function AddSubscription (
    addOption : AddOption
)
不适用。

参数

  • addOption

备注

SQL Server Compact Edition 复制仅支持匿名订阅。

数据库管理员必须将 SQL Server 配置为支持复制,创建 SQL Server 发布,并为匿名订阅启用发布,然后 SQL Server Compact Edition 应用程序才能订阅发布。管理员可在 SQL Server 系统上使用 SQL Server 复制的管理接口或编程接口来完成这些操作。

AddOption 值指定新创建的 SQL Server Compact Edition 订阅数据库的源。其值可以是下列常量之一:

说明

CreateDatabase

指定必须首先创建 SQL Server Compact Edition 数据库,然后才能通过网络从发行者那里获取订阅内容。在这种情况下,AddSubscriptionSynchronize 方法调用将创建 SQL Server Compact Edition 数据库,并从 SQL Server 发行者下载数据库内容。

ExistingDatabase

指定数据库已存在,但其内容需要通过网络从发行者那里获取。在这种情况下,AddSubscriptionSynchronize 方法调用将创建 SQL Server Compact Edition 订阅,并从 SQL Server 发行者下载数据库内容。

AddOption 仅影响 SQL Server Compact Edition 数据库最初创建的方式,以及 SQL Server Compact Edition 客户端代理对待 SQL Server Compact Edition 数据库的方式;因此,它决定了从服务器向 Windows Mobile 设备下载什么数据。

示例

此示例通过调用 AddSubscription 方法时传递 AddOption 的 CreateDatabase 值来创建新的订阅数据库。

Dim repl As SqlCeReplication = Nothing

Try
    ' Instantiate and configure SqlCeReplication object
    '
    repl = New SqlCeReplication()
    repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa30.dll"
    repl.InternetLogin = "MyInternetLogin"
    repl.InternetPassword = "<password>"
    repl.Publisher = "MyPublisher"
    repl.PublisherDatabase = "MyPublisherDatabase"
    repl.PublisherLogin = "MyPublisherLogin"
    repl.PublisherPassword = "<password>"
    repl.Publication = "MyPublication"
    repl.Subscriber = "MySubscriber"
    repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf"

    ' Create the local SQL Mobile Database subscription
    '
    repl.AddSubscription(AddOption.CreateDatabase)

    ' Synchronize to the SQL Server to populate the Subscription 
    '
    repl.Synchronize()
Catch
    ' Handle errors here
    '
Finally
    ' Dispose the repl object
    '
    repl.Dispose()
End Try
SqlCeReplication repl = null;

try
{
    // Instantiate and configure SqlCeReplication object
    //
    repl = new SqlCeReplication();
    repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa30.dll";
    repl.InternetLogin = "MyInternetLogin";
    repl.InternetPassword = "<password>";
    repl.Publisher = "MyPublisher";
    repl.PublisherDatabase = "MyPublisherDatabase";
    repl.PublisherLogin = "MyPublisherLogin";
    repl.PublisherPassword = "<password>";
    repl.Publication = "MyPublication";
    repl.Subscriber = "MySubscriber";
    repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf";

    // Create a local SQL Mobile Database subscription
    //
    repl.AddSubscription(AddOption.CreateDatabase);

    // Synchronize to the SQL Server database
    //
    repl.Synchronize();
}
catch (SqlCeException)
{
    // Handle errors here
    //
}
finally
{
    // Dispose the repl object
    //
    repl.Dispose();
}

平台

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Windows Vista、Microsoft Windows XP SP2 和 Windows Server 2003 SP1 支持 Microsoft .NET Framework 3.0。

版本信息

.NET Framework

受以下版本支持:3.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

SqlCeReplication 类
SqlCeReplication 成员
System.Data.SqlServerCe 命名空间