从Dynamics CRM API返回什么DateTime

GER*_*GER 5 c# dynamics-crm microsoft-dynamics-webapi

从Dynamics CRM Web API返回的DateTime对象是否始终以UTC格式记录?

我正在使用CRM SDK nuget包.我已经阅读了几个博客(由CRM商店),CRM API总是返回UTC DateTime对象,我经历过DateTime.Kind总是UTC(来自我的测试),但我需要确定.

如果重要的话,CRM是2015年.

我使用以下代码调用Dynamics CRM Web服务.

 var querybyattribute = new QueryByAttribute()
 {
     EntityName = Opportunity.EntityLogicalName,
     ColumnSet = new ColumnSet(true)//all columns
 };

querybyattribute.Attributes.AddRange(attributeName);
querybyattribute.Values.AddRange(attributeValue);
Run Code Online (Sandbox Code Playgroud)

然后调用RetreiveMultiple

EntityCollection entities;
using (var proxy = new ManagedTokenOrganizationServiceProxy(serviceManagement, credentials))
{
    entities = proxy.RetrieveMultiple(query);
}
Run Code Online (Sandbox Code Playgroud)

Hen*_*k H 5

CRM中的日期有三种不同的行为类型.其中只有两个真正拥有时区的概念.可以在MSDN上找到这三种类型的行为,相关部分复制到此处:

UserLocal(这是CRM 2015预备更新1中唯一可用的)

检索操作返回UTC值.

DateOnly

对于检索和更新操作,不执行时区转换,时间值始终为12 AM(00:00:00).

TimeZoneIndependent

对于检索和更新操作,不执行时区转换,并且无论用户时区如何,系统中都分别返回和更新实际日期和时间值.