首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何防止在SerializeToString函数调用期间DDay.ical ics文件重复重复事件

如何防止在SerializeToString函数调用期间DDay.ical ics文件重复重复事件
EN

Stack Overflow用户
提问于 2011-08-19 00:20:10
回答 1查看 2.4K关注 0票数 5

希望有人能帮上忙。在.net版本2中使用DDay.iCal版本1.0.1.490时,我在调用SerilizeToString方法后得到重复的事件事件。

示例代码:

代码语言:javascript
复制
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DDay.iCal;
using DDay.iCal.Serialization.iCalendar;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            iCalendar iCal = new iCalendar();
            Event evt = iCal.Create<Event>();
            Uri eventLink = new Uri("http://middlebury.edu";);
            evt.IsAllDay = false;

           evt.Start = new iCalDateTime(DateTime.Parse("2011-08-11"));
           evt.Duration = new TimeSpan(2, 0, 0);
           evt.Location = "Test";
           evt.Summary = "Breakfast";
           evt.Url = eventLink;
           evt.Description = "Sausage Links" + "\n" + "Pancakes" + "\n";

          iCal.Events.Add(evt);

          iCalendarSerializer serializer = new iCalendarSerializer(iCal);

          string result = serializer.SerializeToString(iCal);
      }
   }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-22 22:36:04

Event evt = iCal.Create<Event>()创建一个新事件,将其添加到日历的事件集合中,然后返回它。稍后,您可以手动将相同的事件添加到日历的事件集合中:iCal.Events.Add(evt)

我也在做同样的事情,没有意识到Create()方法会将事件添加到日历中。可以使用标准构造函数Event evt = new Event()初始化事件,也可以删除日历事件集合的手动Add()

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7110743

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档