问题描述
我正在尝试使用 DevExpress Scheduler control 来安排任务,但当控制不可用时,我无法弄清楚如何在代码背后使用 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\" />",{
"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\" />",{
"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 开始的时候找到好运。
我希望应该有一个助手类或一些标准程序来简化给定日期/时间与约会集合的测试。某种命中测试。但我找不到有关该主题的任何内容。这些教程没有帮助。例如,在 this one 中,约会是使用与将 TaskA
数据结构导入数据库非常相似的存储,但省略了后端部分。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)