如何解决给定UTC日期,您如何正确设置“自适应卡-日期选择器”的值?
这是卡模板:
{
"type": "AdaptiveCard","body": [
{
"type": "FactSet","facts": [
{
"title": "Given Date 1","value": "${string(dueDate)}"
},{
"title": "Formatted Date 1","value": "{{DATE(${string(dueDate)},COMPACT)}}"
},{
"title": "Given Date 2","value": "${dueDateTicks}"
},{
"title": "Formatted Date 2","value": "${formatTicks(int(dueDateTicks),'yyyy-MM-dd')}"
}
]
},{
"type": "Input.Date","id": "date","value": "${formatDateTime(dueDate,'yyyy-MM-dd')}"
}
],"$schema": "http://adaptivecards.io/schemas/adaptive-card.json","version": "1.2"
}
这是给定数据的示例:
{
"dueDate": "2020-11-30T21:00:00Z","dueDateTicks": "637423668000000000"
}
在设计器预览中尝试此操作时,它可以正确呈现(本地@ GMT + 8):2020-12-01
Given Date 1
2020-11-30T21:00:00Z
Formatted Date 1
12/1/2020
Given Date 2
637423668000000000
Formatted Date 2
2020-12-01
DatePicker Value
12/01/2020
但是在团队中,日期选择器和格式化的日期值已关闭(本地@ GMT + 8):2020-11-30
Given Date 1
11/30/2020 21:00:00
Formatted Date 1
12/1/2020
Given Date 2
637423668000000000
Formatted Date 2
2020-11-30
DatePicker Value
30 Nov 2020
解决方法
Activity类具有一个“ LocalTimestamp”字段,您应使用该字段根据用户的语言环境实例化日期。有关更多信息,请参见here。显然,处理这个问题是特定于平台的(您还没有说您使用的平台),但是例如对于C#,您可以通过DateTimeOffset来处理它。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。