Construtor SyncParameter (String, Object)
Inicializa uma nova instância da classe SyncParameter usando parâmetros de nome e valor.
Namespace: Microsoft.Synchronization.Data
Assembly: Microsoft.Synchronization.Data (em microsoft.synchronization.data.dll)
Sintaxe
'Declaração
Public Sub New ( _
name As String, _
value As Object _
)
'Uso
Dim name As String
Dim value As Object
Dim instance As New SyncParameter(name, value)
public SyncParameter (
string name,
Object value
)
public:
SyncParameter (
String^ name,
Object^ value
)
public SyncParameter (
String name,
Object value
)
public function SyncParameter (
name : String,
value : Object
)
Parâmetros
- name
O nome do parâmetro.
- value
O valor do parâmetro.
Comentários
Normalmente são usados parâmetros de sincronização para passar informações de filtragem para o agente de sincronização. Esses parâmetros são então usados em comandos para o adaptador de sincronização.
Exemplo
O exemplo de código a seguir é de uma classe derivada de SyncAgent. Esse código cria um objeto SyncParameter que especifica um valor para o parâmetro @SalesPerson
. Em um aplicativo, esse valor pode ser proveniente de uma ID de logon ou de outra entrada de usuário. Para exibir código no contexto de um exemplo completo, consulte Como filtrar linhas e colunas.
this.Configuration.SyncParameters.Add(
new SyncParameter("@SalesPerson", "Brenda Diaz"));
Me.Configuration.SyncParameters.Add(New SyncParameter("@SalesPerson", "Brenda Diaz"))
O exemplo de código a seguir é de uma classe derivada de DbServerSyncProvider. Esse código especifica quais colunas e linhas inseridas devem ser baixadas para a tabela Customer
. Você pode codificar um valor para SalesPerson
. No entanto, é mais comum usar um parâmetro que tenha um valor que possa ser alterado, como mostra o exemplo. O exemplo passa o parâmetro de filtragem junto com os outros parâmetros necessários para baixar inserções incrementais.
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
Consulte também
Referência
Classe SyncParameter
Membros SyncParameter
Namespace Microsoft.Synchronization.Data