【问题标题】:right way to query calendar items via ews managed api?通过 ews managed api 查询日历项目的正确方法?
【发布时间】:2016-08-07 12:48:31
【问题描述】:

我有以下代码:

var startProp = new ExtendedPropertyDefinition(DefaultExtendedPropertySet.Meeting, "DTSTART", MapiPropertyType.String);
var endProp = new ExtendedPropertyDefinition(DefaultExtendedPropertySet.Meeting, "DTEND", MapiPropertyType.String);

var cond1 = new SearchFilter.IsEqualTo(startProp, StartDate);
var cond2 = new SearchFilter.IsEqualTo(endProp, EndDate);
var filter = new SearchFilter.SearchFilterCollection(LogicalOperator.And, cond1, cond2);
var items = svc.FindItems(WellKnownFolderName.Calendar, filter, view);

我正在尝试在交换室邮箱上运行此查询。 (但这在上面的代码中并不明显)。它可能会保留确切的开始/结束时间。因此,如果有一项符合该条件的预订,我应该至少获得一项。

背景:想想一个会议室,人们试图阻止它开会。在交换中,这只是另一个邮箱,类似于用户邮箱。所以预订成功后,此邮箱会收到一封包含日历详细信息的电子邮件(iCalendar 格式 (*.ics)。

我被困在两个不同的方面......

  1. items 在上面的代码中不返回任何内容。 TotalCount 为零。也许我在 api 上做错了什么。我想不通。

  2. 我实际上对我要查询的内容感到困惑。我不明白交易所在这件事上的解决方案。这将在下面进一步描述。

因此,您已在房间邮箱中通过电子邮件发送项目。每封电子邮件都嵌入了日历,通常使用一些 base64 编码。日历有一个特定的模式 - 我们只对您在 VEVENTS 之间找到的数据感兴趣(即 BEGIN:VEVENT 和 END:VEVENT)。这里的问题是有时可能有多个事件。那么交易所是如何做到的呢?它是否贯穿所有事件,符合标准;如果匹配成功,它是否返回该“电子邮件”(附有/嵌入日历)?还是其他机制?

因此我不确定我在上面的代码中编写的语义。所以请就此提出建议。

【问题讨论】:

    标签: email calendar exchange-server-2010 ews-managed-api


    【解决方案1】:

    找到第一部分的答案:

    static void Find(DateTime Start, DateTime End, ExchangeService svc)
    {
        var filter1 = new SearchFilter.IsGreaterThanOrEqualTo(MeetingRequestSchema.Start, Start);
        var filter2 = new SearchFilter.IsLessThanOrEqualTo(MeetingRequestSchema.End, End);
        var filter = new SearchFilter.SearchFilterCollection(LogicalOperator.And, filter1, filter2);
        var vw = new ItemView(99);
        var items = svc.FindItems(WellKnownFolderName.Calendar, filter, vw);
    
        Console.WriteLine("Count: {0}", items.TotalCount);
    
    }
    

    【讨论】:

      猜你喜欢
      • 2021-07-15
      • 1970-01-01
      • 1970-01-01
      • 2013-10-24
      • 1970-01-01
      • 2013-06-11
      • 1970-01-01
      • 2017-04-22
      • 1970-01-01
      相关资源
      最近更新 更多