Freigeben über


SyncParameter-Klasse

Kapselt Informationen, die vom Client zum Server gesendet werden.

Namespace:  Microsoft.Synchronization.Data
Assembly:  Microsoft.Synchronization.Data (in Microsoft.Synchronization.Data.dll)

Syntax

'Declaration
<SerializableAttribute> _
Public Class SyncParameter
'Usage
Dim instance As SyncParameter
[SerializableAttribute]
public class SyncParameter
[SerializableAttribute]
public ref class SyncParameter
[<SerializableAttribute>]
type SyncParameter =  class end
public class SyncParameter

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.

Beispiele

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

Vererbungshierarchie

System. . :: . .Object
  Microsoft.Synchronization.Data..::..SyncParameter

Threadsicherheit

Alle öffentlichen static (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Siehe auch

Verweis

SyncParameter-Member

Microsoft.Synchronization.Data-Namespace