Freigeben über


SyncConfiguration.SyncParameters-Eigenschaft

Ruft eine SyncParameterCollection von SyncParameter-Objekten ab, die auf dem Server als Sitzungsvariablen verfügbar sind.

Namespace: Microsoft.Synchronization.Data
Assembly: Microsoft.Synchronization.Data (in microsoft.synchronization.data.dll)

Syntax

'Declaration
Public ReadOnly Property SyncParameters As SyncParameterCollection
'Usage
Dim instance As SyncConfiguration
Dim value As SyncParameterCollection

value = instance.SyncParameters
public SyncParameterCollection SyncParameters { get; }
public:
property SyncParameterCollection^ SyncParameters {
    SyncParameterCollection^ get ();
}
/** @property */
public SyncParameterCollection get_SyncParameters ()
public function get SyncParameters () : SyncParameterCollection

Eigenschaftenwert

Eine SyncParameterCollection von SyncParameter-Objekten.

Hinweise

Synchronisierungsparameter werden in der Regel verwendet, um Filterinformationen an den Synchronisierungs-Agent zu übergeben. Diese Parameter kommen dann in Befehlen für den Synchronisierungsadapter zum Einsatz.

Beispiel

Das folgende Codebeispiel stammt aus einer Klasse, die von der SyncAgent-Klasse abgeleitet ist. Mit diesem Code wird ein SyncParameter-Objekt erstellt, das einen Wert für den @SalesPerson-Parameter festlegt. In einer Anwendung könnte dieser Wert von einem Benutzernamen oder einer anderen Benutzereingabe herrühren. Eine Darstellung dieses Codes im Kontext eines vollständigen Beispiels finden Sie unter Vorgehensweise: Filtern von Zeilen und Spalten.

this.Configuration.SyncParameters.Add(
    new SyncParameter("@SalesPerson", "Brenda Diaz"));
Me.Configuration.SyncParameters.Add(New SyncParameter("@SalesPerson", "Brenda Diaz"))

Das folgende Codebeispiel stammt aus einer Klasse, die von der DbServerSyncProvider-Klasse abgeleitet ist. Dieser Code legt fest, welche eingefügten Spalten und Zeilen für die Customer-Tabelle heruntergeladen werden sollen. Sie können zwar für SalesPerson einen hart codierten, nicht veränderbaren Wert verwenden, üblicher ist es aber, auf einen Parameter mit einem variablen Wert zurückzugreifen (siehe Beispiel). Das Beispiel übergibt den Filterparameter zusammen mit den anderen Parametern, die zum Herunterladen inkrementeller Einfügungen nötig sind.

SqlCommand customerIncrInserts = new SqlCommand();
customerIncrInserts.CommandText =
    "SELECT CustomerId, CustomerName, CustomerType " +
    "FROM Sales.Customer " +
    "WHERE SalesPerson = @SalesPerson " +
    "AND (InsertTimestamp > @sync_last_received_anchor " +
    "AND InsertTimestamp <= @sync_new_received_anchor " +
    "AND InsertId <> @sync_client_id)";
customerIncrInserts.Parameters.Add("@SalesPerson", SqlDbType.NVarChar);
customerIncrInserts.Parameters.Add("@" + SyncSession.SyncLastReceivedAnchor, SqlDbType.Timestamp);
customerIncrInserts.Parameters.Add("@" + SyncSession.SyncNewReceivedAnchor, SqlDbType.Timestamp);
customerIncrInserts.Parameters.Add("@" + SyncSession.SyncClientId, SqlDbType.UniqueIdentifier);
customerIncrInserts.Connection = serverConn;
customerSyncAdapter.SelectIncrementalInsertsCommand = customerIncrInserts;
Dim customerIncrInserts As New SqlCommand()
With customerIncrInserts
    .CommandText = _
        "SELECT CustomerId, CustomerName, CustomerType " _
      & "FROM Sales.Customer " _
      & "WHERE SalesPerson = @SalesPerson " _
      & "AND (InsertTimestamp > @sync_last_received_anchor " _
      & "AND InsertTimestamp <= @sync_new_received_anchor " _
      & "AND InsertId <> @sync_client_id)"
    .Parameters.Add("@SalesPerson", SqlDbType.NVarChar)
    .Parameters.Add("@" + SyncSession.SyncLastReceivedAnchor, SqlDbType.Timestamp)
    .Parameters.Add("@" + SyncSession.SyncNewReceivedAnchor, SqlDbType.Timestamp)
    .Parameters.Add("@" + SyncSession.SyncClientId, SqlDbType.UniqueIdentifier)
    .Connection = serverConn
End With
customerSyncAdapter.SelectIncrementalInsertsCommand = customerIncrInserts

Siehe auch

Verweis

SyncConfiguration-Klasse
SyncConfiguration-Member
Microsoft.Synchronization.Data-Namespace