通过ReceivedTime以编程方式限制,我可以使用哪种日期/时间格式?

时间:2017-09-30 05:14:33

标签: c# outlook-addin

在我的系统上(Outlook 2016,Windows 10),如果我对我的文件夹使用以下搜索限制,它将按预期工作。

...
var filter = $"[ReceivedTime]> '{dt.ToString("ddd M/dd/yyyy hh:mm tt")}'";
var items = folder.Items.Restrict(filter);
foreach( var item in items )
{
  ...

但我担心日期格式"ddd M/dd/yyyy hh:mm tt"可能无法在某些系统上运行。特别是在月份和日期可能引起混淆的情况下(天<= 12)

确保过滤器可以使用我的用户可能使用的任何本地系统在任何系统上运行的最佳方法是什么。

1 个答案:

答案 0 :(得分:0)

您应该使用.ToString(“g”)转换为特定于文化的通用日期短时格式。

如果是en-US,则会4/10/2008 6:30 AM

有关格式说明符here的更多信息。

可以找到其他有用信息here,它表明您可以在过滤器字符串中调用Format方法,并让Outlook负责格式化。虽然我认为只使用g格式说明符可以适用于您的情况。