我有一个使用OneDrive REST APIs的C#UWP应用。
应用程序查询应用程序文件夹并检索此特殊文件夹(app文件夹)中的所有文件。
string appFolderParameters = string.Concat(OneDriveApi, OneDriveAppsFolderPath, "/children", "?access_token=", App.Settings.Values["access_token"]);
var appFolderMeetings = await client.GetStringAsync(appFolderParameters);
foreach (var file in files)
{
string fileName = file["name"]?.ToString();
string lastModifiedString = file["lastModifiedDateTime"]?.ToString();
}
虽然查询工作正常,但值,尤其是lastModifiedString总是落后<1>小时。
我的PC TimeZone设置为“自动”,Microsoft帐户TimeZone设置为CET(与我的PC相同)。知道API返回错误的lastModifiedString的原因吗?
以下是一些显示此问题的屏幕截图。
答案 0 :(得分:1)
看起来lastModifiedDateTime只是UTC格式。在冬季,CET和UTC之间有一小时的差异。
要在本地时间和UTC之间进行转换,请使用DateTime
类型,甚至更好的DateTimeOffset
类型。