Класс SyncParameter
Включает сведения, передаваемые от клиента серверу.
Пространство имен: Microsoft.Synchronization.Data
Сборка: Microsoft.Synchronization.Data (в microsoft.synchronization.data.dll)
Синтаксис
'Декларация
<SerializableAttribute> _
Public Class SyncParameter
'Применение
Dim instance As SyncParameter
[SerializableAttribute]
public class SyncParameter
[SerializableAttribute]
public ref class SyncParameter
/** @attribute SerializableAttribute() */
public class SyncParameter
SerializableAttribute
public class SyncParameter
Замечания
Параметры синхронизации обычно используются для передачи агенту синхронизации сведений о фильтрации. Затем эти параметры используются в командах для адаптера синхронизации.
Пример
Следующий пример кода представляет собой класс, который является производным от класса SyncAgent. В этом коде создается объект SyncParameter, задающий значение для параметра @SalesPerson
. В приложении это значение может соответствовать идентификатору входа или поступать из других введенных пользователем данных. Чтобы просмотреть код в контексте полного примера, см. раздел Как фильтровать строки и столбцы.
this.Configuration.SyncParameters.Add(
new SyncParameter("@SalesPerson", "Brenda Diaz"));
Me.Configuration.SyncParameters.Add(New SyncParameter("@SalesPerson", "Brenda Diaz"))
Следующий пример кода представляет собой класс, который является производным от класса DbServerSyncProvider. Этот код определяет, какие вставленные столбцы и строки будут загружаться для таблицы Customer
. Значение параметра SalesPerson
может быть жестко задано в коде. Однако обычно используется параметр, значение которого может меняться, как показано в данном примере. В примере параметр фильтра передается вместе с другими параметрами, необходимыми для загрузки добавочных операций вставки.
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
Иерархия наследования
System.Object
Microsoft.Synchronization.Data.SyncParameter
Многопоточное использование
Все общие статические члены (Shared в Visual Basic) можно использовать в многопоточных операциях. Безопасная многопоточная работа с членами экземпляров типа не гарантируется.
См. также
Справочник
Элементы SyncParameter
Пространство имен Microsoft.Synchronization.Data