Dynamics CRM-夏时制

| 夏令时开始于3月27日在爱尔兰。从那时起,任何已添加到Dynamics的记录都将任何日期字段设置为比实际添加时间晚一小时。 奇怪的是,Web UI正确返回了日期,而使用SQL Server和XRM进行查询时错误地返回了日期。 服务器计算机上的时间设置正确,我已经安装了汇总16,还有什么可以尝试的吗? 谢谢, 大卫     
已邀请:
Dynamics CRM以UTC格式存储所有日期时间值。 与Web前端一起输入的所有数据在存储时都会自动转换为UTC,在读取时会转换回用户时区。 如果使用的是Dynamics CRM Outlook客户端,则使用Windows的时区设置。如果使用Web客户端,它将在您的个人选项中使用时区设置。确保它是正确的。 开发包 SDK始终使用UTC作为日期,并且不进行任何转换。您有责任以适当的方式转换数据。但是,CrmDateTime类包含一些有用的方法和属性。 报告书 确保仅访问FilteredViews(例如FilteredAccount,这是唯一支持的数据库用法)。日期字段将自动转换为正确的时区(根据用户设置)。如果需要访问原始值,则可以将其作为带有utc后缀的列(createdon-> createdonutc)使用。要根据用户/系统设置格式化日期值,您还可以在报告中访问这些设置。请参见\“格式化内容\”     
方便使用的还有Dynamics CRM随附的两个UDF:
fn_UTCToLocalTime(@dateTime)
fn_LocalTimeToUTC(@dateTime)
这些使用系统用户声明的时区与UTC进行相互转换,并考虑DST。     
看来我的问题已解决,方法是将DateTime值从UTC转换为本地时间。 (我希望将ckeller的评论标记为答案,但似乎没有办法做到。非常感谢ckeller。)     

要回复问题请先登录注册