我有一个包含DateTimeOffset对象的SQL Server 2008数据库。根据{{3}},
SQL Server Compact支持在SQL Server 2008中复制新数据类型,例如日期,时间,日期时间2,日期时间偏移,地理位置和几何。 SQL Server 2008中的新数据类型映射到nchar,nvarchar,image等。有关SQL Server 2008中数据类型的详细信息,请参阅SQL Server 2008联机丛书文档中的数据类型。
但是,当我使用Microsoft Sync Framework并尝试将我的SQL Server数据库同步到SQL Server Compact数据库时,我收到以下错误:
从DbType System.DateTimeOffset到已知的SqlCeType没有映射。
相关的Microsoft Sync Framework文档为this page。我在SQL CE 3.5 SP2和.NET Framework 4.0上。
我有点迷失在这里。我做错了什么?
答案 0 :(得分:2)
您使用的是什么版本的ADO.NET和.Net Compact Framework? docs for Sync FW v2.0和v2.1表示wrt datetimeoffset
如果服务器提供程序托管在计算机上 运行ADO.NET 2.0 SP1,ADO.NET 2.0 SP1 也必须在客户端上提供转换 成功。自动转换datetimeoffset .NET不支持客户端 Compact Framework 2.0 SP1或.NET Compact Framework 3.5。
这与您的错误一致。
答案 1 :(得分:-1)
不支持DateTimeOffset - 文档提到的类型转换用于合并复制,而不是Sync Framework