1

我正在同步数据库。有一个主数据库和其他客户端数据库。

我从模板创建了一个过滤范围。设置说 UserID = 1 然后在服务器和客户端数据库 1 上创建此范围

再次

我创建了一个与模板名称不同的新过滤范围。设置说 UserID = 2 然后在服务器和客户端数据库 2 上创建此范围

但是当我运行同步时,它正在与数据库客户端 DB 1 和客户端 DB 2 同步 UserID =1

这是我的代码:

 private static void CreateTemplateScope(SqlConnection serverConn, string Template, string ScopeName, string TableName, string Condition, string ColumnName, string Operator, string FilterValue)
    {

        DbSyncScopeDescription scopeDesc = new DbSyncScopeDescription(Template);

        scopeDesc.UserComment = "N/A";

        DbSyncTableDescription customerDescription =
            SqlSyncDescriptionBuilder.GetDescriptionForTable(TableName, serverConn);
        scopeDesc.Tables.Add(customerDescription);

        SqlSyncScopeProvisioning serverTemplate = new SqlSyncScopeProvisioning(serverConn, scopeDesc, SqlSyncScopeProvisioningType.Template);

        serverTemplate.Tables[TableName].AddFilterColumn(ColumnName);

        serverTemplate.Tables[TableName].FilterClause = "[side].[" + ColumnName + "] " + Operator + " " + FilterValue;

        serverTemplate.SetCreateProceduresForAdditionalScopeDefault(DbSyncCreationOption.CreateOrUseExisting);

        serverTemplate.Apply();

        SqlSyncScopeProvisioning serverProvRetail = new SqlSyncScopeProvisioning(serverConn);
        serverProvRetail.PopulateFromTemplate(ScopeName, Template);
        serverProvRetail.Apply();

    }

任何帮助表示赞赏。

如果您想了解更多详情,请告诉我

4

0 回答 0