Я использую синхронизацию через WCF, мой сервер и клиент - SQL Server EXPRESS 2008, (для разработки я использовал один экземпляр sql express)
Я добавил шаблон фильтров синхронизации на сервер и создал все свои области на основе этого шаблона. Структура таблиц на стороне клиента и сервера одинакова. Когда я запускаю свое приложение, сначала все системные таблицы, SP, триггеры хорошо создаются на обеих сторонах.
Но во время синхронизации (localProvider
это сервер, RemoteProvider
клиент)
SyncOrchestrator orchestrator = new SyncOrchestrator
{
LocalProvider = localProvider,
RemoteProvider = remoteProvider,
Direction = SyncDirectionOrder.Download
};
процесс я получил следующее исключение:
{"Не удалось выполнить команду BulkInsertCommand для таблицы« MySyncTable »; транзакция откатилась. Убедитесь, что синтаксис команды правильный."}
Внутреннее исключение:
{"Не удалось выполнить преобразование при преобразовании значения nvarchar 'после синхронизации' в бит типа данных. \ R \ nДанные для табличного параметра \" @ changeTable \ "не соответствуют табличному типу параметра. \ r \ nОпределение было прекращено. "}
Что касается меня, то, похоже, у меня другая структура таблиц, я смотрю на BulkInsertCommand
на стороне сервера и не нахожу ничего плохого,
Может ли это быть связано с областью применения фильтров или почему синхронизация генерирует эту ошибку?
Спасибо.