次の方法で共有


DbSyncProvider.SelectOverlappingScopesCommand プロパティ

指定したスコープ内にあり、他のスコープにも含まれているすべてのテーブルのスコープ名およびテーブル名を返すクエリまたはストアド プロシージャを格納する IDbCommand オブジェクトを取得または設定します。

このプロパティは、CLS に準拠していません。  

名前空間: Microsoft.Synchronization.Data
アセンブリ: Microsoft.Synchronization.Data (microsoft.synchronization.data.dll 内)

構文

'宣言
Public Overridable Property SelectOverlappingScopesCommand As IDbCommand
'使用
Dim instance As DbSyncProvider
Dim value As IDbCommand

value = instance.SelectOverlappingScopesCommand

instance.SelectOverlappingScopesCommand = value
public virtual IDbCommand SelectOverlappingScopesCommand { get; set; }
public:
virtual property IDbCommand^ SelectOverlappingScopesCommand {
    IDbCommand^ get ();
    void set (IDbCommand^ value);
}
/** @property */
public IDbCommand get_SelectOverlappingScopesCommand ()

/** @property */
public void set_SelectOverlappingScopesCommand (IDbCommand value)
public function get SelectOverlappingScopesCommand () : IDbCommand

public function set SelectOverlappingScopesCommand (value : IDbCommand)

プロパティ値

クエリまたはストアド プロシージャを格納する IDbCommand オブジェクト。

次のコード例では、SelectOverlappingScopesCommand プロパティのコマンドを指定します。テーブルが複数のスコープに属していた場合、このコマンドと、UpdateScopeCleanupTimestampCommand に指定されたコマンドによって、Sync Framework がクリーンアップを適切に処理できます。完全なコンテキスト例でこのコードを表示するには、「コラボレーション同期のメタデータをクリーンアップする方法 (SQL Server 以外)」を参照してください。

SqlCommand overlappingScopesCmd = new SqlCommand();
overlappingScopesCmd.CommandType = CommandType.StoredProcedure;
overlappingScopesCmd.CommandText = "Sync.sp_SelectSharedScopes";
overlappingScopesCmd.Parameters.Add("@" + DbSyncSession.SyncScopeName, SqlDbType.NVarChar, 100);
sampleDbProvider.SelectOverlappingScopesCommand = overlappingScopesCmd;
Dim overlappingScopesCmd As New SqlCommand()
With overlappingScopesCmd
    .CommandType = CommandType.StoredProcedure
    .CommandText = "Sync.sp_SelectSharedScopes"
    .Parameters.Add("@" + DbSyncSession.SyncScopeName, SqlDbType.NVarChar, 100)
End With

sampleDbProvider.SelectOverlappingScopesCommand = overlappingScopesCmd

次のコード例では、オーバーラップするスコープ コマンドによって呼び出されるストアド プロシージャを作成します。

CREATE PROCEDURE Sync.sp_SelectSharedScopes
      @sync_scope_name nvarchar(100)      
AS
   SELECT ScopeTableMap2.table_name AS sync_table_name, 
          ScopeTableMap2.scope_name AS sync_shared_scope_name
   FROM Sync.ScopeTableMap ScopeTableMap1 JOIN Sync.ScopeTableMap ScopeTableMap2
   ON ScopeTableMap1.table_name = ScopeTableMap2.table_name
   AND ScopeTableMap1.scope_name = @sync_scope_name
   WHERE ScopeTableMap2.scope_name <> @sync_scope_name

参照

リファレンス

DbSyncProvider クラス
DbSyncProvider メンバー
Microsoft.Synchronization.Data 名前空間