【问题标题】:Apply a ReceivedTime = Today's Date filter in Items.Restrict在 Items.Restrict 中应用 ReceivedTime = Today's Date 过滤器
【发布时间】:2014-11-15 08:04:27
【问题描述】:

我正在尝试使用以下代码过滤文件夹中的项目:

sFilter = "[ReceivedTime] > '9/20/2014'";
items = InboxFolder.Items; // Line 1
items = InboxFolder.Items.Restrict(sFilter); //Line 2

当第 2 行执行时,它返回 9/20/2014 的项目

我想要 2014 年 9 月 21 日的项目(如 ReceivedTime > 9/20/2014)。

我如何获得今天的物品,即ReceivedTime = Today's Date

查找方法也不起作用。

【问题讨论】:

    标签: c# .net office-interop unmanaged outlook-2010


    【解决方案1】:

    你可以试试改sFilter

    sFilter =" [ReceivedTime] >= '2014-09-21 00:00' "
    

    【讨论】:

    • 这样,结果为零。这很奇怪。
    【解决方案2】:

    Outlook 互操作需要一些特定的日期格式作为 Restrict 方法的参数。

    你可以使用大于号的等号>=

    请将您的日期格式转换为 ('MM/dd/yyyy HH:mm'),请确保将您的日期放在单引号中。

    var filter = "[ReceivedTime] >='" + DateTime.Now.ToString("MM/dd/yyyy HH:mm") + "' ";
    

    在你的情况下也可以

    sFilter = "[ReceivedTime] >= '09/20/2014'";
    

    要在两个日期之间获取电子邮件,您可以使用 and 运算符

    sFilter = "[ReceivedTime] >= '09/20/2014' and [ReceivedTime] <= '09/28/2014'";
    

    你也可以使用这种格式

    var filter = "[ReceivedTime] >='" + DateTime.Now.ToString("g") + "' ";
    

    【讨论】:

      猜你喜欢
      • 2016-06-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-13
      • 1970-01-01
      • 2018-12-09
      • 2017-09-28
      • 2021-05-31
      相关资源
      最近更新 更多