Свойство SyncSession.SyncParameters
Возвращает или задает коллекцию SyncParameterCollection объектов SyncParameter. Эти объекты доступны на сервере в качестве переменных сеанса.
Пространство имен: Microsoft.Synchronization.Data
Сборка: Microsoft.Synchronization.Data (в microsoft.synchronization.data.dll)
Синтаксис
'Декларация
<XmlElementAttribute("CustomParameters")> _
<SuppressMessageAttribute("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")> _
Public Property SyncParameters As SyncParameterCollection
'Применение
Dim instance As SyncSession
Dim value As SyncParameterCollection
value = instance.SyncParameters
instance.SyncParameters = value
[XmlElementAttribute("CustomParameters")]
[SuppressMessageAttribute("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public SyncParameterCollection SyncParameters { get; set; }
[XmlElementAttribute(L"CustomParameters")]
[SuppressMessageAttribute(L"Microsoft.Usage", L"CA2227:CollectionPropertiesShouldBeReadOnly")]
public:
property SyncParameterCollection^ SyncParameters {
SyncParameterCollection^ get ();
void set (SyncParameterCollection^ value);
}
/** @property */
public SyncParameterCollection get_SyncParameters ()
/** @property */
public void set_SyncParameters (SyncParameterCollection value)
public function get SyncParameters () : SyncParameterCollection
public function set SyncParameters (value : SyncParameterCollection)
Значение свойства
Коллекция SyncParameterCollection объектов 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
См. также
Справочник
Класс SyncSession
Элементы SyncSession
Пространство имен Microsoft.Synchronization.Data