Ограничение записей, синхронизируемых с мобильным устройством

Подобные вопросы задавались и раньше, но после целого дня ответов я все еще очень запутался.

Я использую Microsoft Sync Framework с SQL2008 на сервере и SQL CE на устройствах Windows Mobile. Я бы подумал, что это ОЧЕНЬ обычное требование. Я не хочу копировать большие таблицы на мобильное устройство. Мне нужны только те записи, которые необходимы. Например, каждому пользователю потребуются «задания» из таблицы заданий. Им не нужны рабочие места других пользователей. Поэтому мне нужно что-то вроде «where jobId = 3» для одного устройства и «where jobId = 4» для другого и т. Д.

Это выглядело многообещающим: http://jtabadero.spaces.live.com/blog/cns!BF49A449953D0591!1203.entry

но, к сожалению, это не работает с моим кодом. Этот код из образца, похоже, пытается получить код, содержащий SQL:

var remoteProvider = (LocalDataCache1ServerSyncProvider)syncAgent.RemoteProvider; 

var selectIncrementalInsertsCommand = remoteProvider.SalesLT_CustomerSyncAdapter.SelectIncrementalInsertsCommand; 

НО код, содержащий SQL (сгенерированный VS), находится на стороне сервера, а в коде на стороне клиента доступен только прокси. Вот так добавляется прокси:

// The WCF Service
var webSvcProxy = new MicronetCacheSyncService();

// The Remote Server Provider Proxy
var serverProvider = new ServerSyncProviderProxy(webSvcProxy);

// The Sync Agent
var syncAgent = new MicronetCacheSyncAgent();
syncAgent.RemoteProvider = serverProvider;

Итак, как я могу получить код на стороне сервера, содержащий sql, на стороне клиента? Извините, я не очень хорошо это объясняю, но думаю, что вряд ли у кого-то будет ответ. Краткая версия: знает ли кто-нибудь ПРОСТОЙ способ ограничить количество записей, синхронизируемых с мобильным устройством, - это приложение такого типа? Я думаю, что пример был предназначен для настольных приложений.

Мне кажется, что эта структура синхронизации - еще один из недоработанных выпусков Microsoft, который на самом деле является всего лишь бета-версией. Это начинает напоминать мне о некоторых предыдущих ужасных опытах с Entity Framework 1.0 :(


person Mark Evans    schedule 09.08.2010    source источник


Ответы (1)


Учебник по адресу http://msdn.microsoft.com/en-us/library/dd918848%28SQL.105%29.aspx содержит все необходимое для обеспечения фильтрации для области.

К вашему сведению, это руководство предназначено для Sync Framework 2.0, тогда как из приведенного выше кода видно, что вы используете Sync Framework 1.0 - устаревший продукт.

person David Pfeffer    schedule 25.09.2010