c# - 如何在代码中使用调度程序约会
问题描述
我正在尝试使用DevExpress Scheduler 控件来安排任务,但当控件不可用时,我无法弄清楚如何在代码后面使用 apointments。
目前我正在使用此类从控件中序列化约会集合
public enum Type { Normal, Pattern, Occurrence, ChangedOccurrence, DeleteOccurrence }
public class TaskA
{
public DateTime Start { get; set; }
public DateTime End { get; set; }
public string Recurrence { get; set; } // recurrence info in xml format
public Type Type { get; set; }
}
我可以使用以下代码重新构造RecurrenceInfo :
var recurrence = new RecurrenceInfo();
recurrence.FromXml(taskA.Recurrence);
但那又如何呢?例如,如何测试任务 A 是否应该在 10 分钟内开始,同时List<TaskA>
手头有实例?
为什么有人会问这么难?有反复出现:
并且那些具有复杂的内部表示(没有记录实施细节)。例如,我需要检查Id
以查找特定重复发生的已删除事件,并Index
从日期中查找(我猜)一天Start
。
这里用json来说明:
"Scheduler": {
"TaskA": [
{
"Start": "0001-01-01T07:00:00",
"End": "0001-01-01T17:00:00",
"Recurrence": "<RecurrenceInfo End=\"12/31/9999 23:59:59\" WeekDays=\"62\" Id=\"a02837e5-787b-4797-a44d-adbe8aef2fdf\" OccurrenceCount=\"1\" Range=\"2\" Type=\"1\" Version=\"2\" />",
"Type": "Pattern"
},
{
"Start": "2021-07-20T04:00:00",
"End": "2021-07-20T06:00:00",
"Recurrence": "<RecurrenceInfo Start=\"07/20/2021 04:00:00\" Id=\"8ca29855-e78a-41fd-b9af-9316b06ea0c4\" FirstDayOfWeek=\"0\" Version=\"2\" />",
"Type": "Pattern"
},
{
"Start": "2021-07-21T04:00:00",
"End": "2021-07-21T06:00:00",
"Recurrence": "<RecurrenceInfo Id=\"8ca29855-e78a-41fd-b9af-9316b06ea0c4\" Index=\"1\" />",
"Type": "DeleteOccurrence"
},
{
"Start": "2021-07-22T07:00:00",
"End": "2021-07-22T17:00:00",
"Recurrence": "<RecurrenceInfo Id=\"a02837e5-787b-4797-a44d-adbe8aef2fdf\" Index=\"527138\" />",
"Type": "DeleteOccurrence"
},
{
"Start": "2021-07-19T07:00:00",
"End": "2021-07-19T14:00:00",
"Recurrence": "<RecurrenceInfo Id=\"a02837e5-787b-4797-a44d-adbe8aef2fdf\" Index=\"527135\" />",
"Type": "ChangedOccurrence"
}
]
祝你好运,弄清楚 TaskA 什么时候开始今天。
我希望应该有一个助手类或一些标准程序来简化对给定日期/时间的测试,以针对预约集合进行测试。某种命中测试。但我找不到关于这个话题的任何东西。教程没有帮助。例如,在这一项中,约会是使用非常类似于我的TaskA
数据结构到数据库中的存储,但省略了后端部分。
解决方案
推荐阅读
- angular6 - 可以激活问题
- linux - 如何将远程 tarball 提取到本地计算机上
- python-3.x - 我无法在 Kivy 应用程序上校准电阻式触摸屏的正确精度
- laravel-5 - 如何从多个下拉列表中选择数据并将它们组合成 laravel 中的一个变量?
- apache-kafka - 配置 ACL 后 Kafka Leader 不可用
- c - 如何更有效地复制简历上的文件?
- java - Jetty + Jersey 中的多个登录端点
- arrays - MATLAB:改进 for 循环
- php - 设置基于 php cookie 检查的复选框
- python - 如何在词干算法中进行实证分析