locked
SqlSyncScopeProvisioning members don't match documentation RRS feed

  • Question

  • I've just downloaded Sync Framework 2.0 CTP2 (SyncSDK_en.x86.msi). I'm trying to run the C# sample code from the Help topic "Synchronizing SQL Server and SQL Server Compact ", but I get an error on the second line of the following code:
                SqlSyncScopeProvisioning serverConfig = new SqlSyncScopeProvisioning( scopeDesc );
                serverConfig.CreateTableDefault = DbSyncCreationOption.Skip;
    
    The error says "'Microsoft.Synchronization.Data.SqlServer.SqlSyncScopeProvisioning' does not contain a definition for 'CreateTableDefault'".

    My project has a reference to Microsoft.Synchronization.Data.SqlServer.dll version 3.0.0.0. If I look at that file using Reflector, the members of SqlSyncScopeProvisioning don't match the documentation. For example, the documentation shows 11 public properties including CreateTableDefault, but Reflector only shows 4 properties (Item, ObjectPrefix, ObjectSchema and Tables). And the documentation shows 3 methods whereas Reflector shows 10.
    Saturday, August 22, 2009 11:21 PM

Answers

  • These were converted to methods and this is called out in the readme.  Apologies for the confusion and the docs are updated in preperation for our RTW.

    public class SqlSyncScopeProvisioning {

    // Constructors

    public SqlSyncScopeProvisioning(DbSyncScopeDescription scopeDescription);

    public SqlSyncScopeProvisioning();

     

    // Properties

    public SqlSyncTableProvisioning this[String tableName] { get; }

    public String ObjectPrefix { get; set; }

    public String ObjectSchema { get; set; }

    public IEnumerable<SqlSyncTableProvisioning> Tables { get; }

     

    // Methods

    public void Apply(SqlConnection connection);

    public void PopulateFromScopeDescription(DbSyncScopeDescription scopeDescription);

    public Boolean ScopeExists(String scopeName, SqlConnection connection);

    public String Script(String targetDatabaseName);

    public void SetCreateProceduresDefault(DbSyncCreationOption defaultOption);

    public void SetCreateProceduresForAdditionalScopeDefault(DbSyncCreationOption defaultOption);

    public void SetCreateTableDefault(DbSyncCreationOption defaultOption);

    public void SetCreateTrackingTableDefault(DbSyncCreationOption defaultOption);

    public void SetCreateTriggersDefault(DbSyncCreationOption defaultOption);

    public void SetPopulateTrackingTableDefault(DbSyncCreationOption defaultOption);

    }

     

    Snippet from readme:

  • Some properties were changed to methods in two of the new database provider classes, SqlSyncScopeProvisioning and SqlCeSyncScopeProvisioning. The documentation includes reference content for the properties instead of the methods. For example, the documented SqlSyncScopeProvisioning.CreateProceduresDefault property has been changed in the class to the SqlSyncScopeProvisioning.SetCreateProceduresDefault method.

  •  
    Regards,

    Sean Kelley
    Program Manager
    Microsoft

Wednesday, September 2, 2009 7:05 PM
Moderator