C# MS Exchange 将电子邮件移动到文件夹

2023-12-29

Added:感谢用户@grapkulec,我正在使用

using Microsoft.Exchange.WebServices.Data;

我正在尝试将电子邮件移动到我已在 Outlook 中创建的文件夹(使用 MS Exchange)。到目前为止,我已经能够将电子邮件移动到草稿或其他众所周知的文件夹名称,但没有成功地将其移动到我创建的名为“示例”的文件夹。

foreach (Item email in findResults.Items)
email.Move(WellKnownFolderName.Drafts);

上面的代码有效;但我不想使用众所周知的文件夹。而且,如果我尝试将代码更改为:

email.Move(Folder.(Example));

or

email.Move(Folder.["Example"]);

它不会移动(在这两种情况下都会引发错误)。我在 MSDN、SO 和通用 C# 上找到了大量有关如何将电子邮件移动到文件夹中的示例 - 但是ONLYOutlook“熟知”的文件夹(草稿、垃圾邮件等),这些文件夹不适用于我创建的文件夹。


Solved!

The Move由于 ID 格式错误,无论多次尝试,命令都失败。显然移动操作不允许使用名称。我曾尝试过DisplayName作为一个标识符,这就是让我失望的原因。最后我放弃了DisplayName,这会有帮助。相反,我通过将 ID 存储在变量中来指向 ID(这阻止了烦人的“ID 格式错误”错误),并且移动成功了。

Code:

Folder rootfolder = Folder.Bind(service, WellKnownFolderName.MsgFolderRoot);
rootfolder.Load();

foreach (Folder folder in rootfolder.FindFolders(new FolderView(100)))
{
    // Finds the emails in a certain folder, in this case the Junk Email
    FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.JunkEmail, new ItemView(10));

    // This IF limits what folder the program will seek
    if (folder.DisplayName == "Example")
    {
        // Trust me, the ID is a pain if you want to manually copy and paste it. This stores it in a variable
        var fid = folder.Id;
        Console.WriteLine(fid);
        foreach (Item item in findResults.Items)
        {
            // Load the email, move the email into the id.  Note that MOVE needs a valid ID, which is why storing the ID in a variable works easily.
            item.Load();
            item.Move(fid);
        }
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# MS Exchange 将电子邮件移动到文件夹 的相关文章

随机推荐

  • 使用 s3distcp 将文件从 amazon s3 复制到 hdfs 失败

    我正在尝试使用 EMR 中的工作流程将文件从 s3 复制到 hdfs 当我运行以下命令时 作业流程成功启动 但在尝试将文件复制到 HDFS 时出现错误 我是否需要设置任何输入文件权限 Command elastic mapreduce jo
  • iOS Swift:无法检索 UIwebView 中加载的当前 url

    我正在 webview 应用程序 iOS swift 中工作 我面临的问题是我想获取 webview 显示的每个网址 根据网址 我必须执行一些 if else 检查 但我无法获取 webview 加载的 url webview 显示良好的结
  • Windows Phone 7.1 SDK 警报

    我正在尝试使用 Windows Phone 7 1 SDK 中的新 Alarm 类创建警报 我可以让它工作 但闹钟似乎没有在我设置的时间响起 Alarm alarm new Alarm MyAlarm Content Alarm Begin
  • 在 Rails 3 中使用标记国际化整个文本

    例如 Rails 3 中的服务条款文档国际化的最佳实践是什么 我可以想到两个选择 为每个区域设置创建一个部分 并根据当前用户的区域设置选择要加载的部分 li li li li 这些似乎都不是一个好的解决方案 有任何想法吗 有一些解决方案 但
  • jQuery 切换显示/隐藏多个 DIV ID

    CODE document ready function toggle hide show click function toggle toggle slow this attr src images checkmark2 jpg func
  • 特定键上的部分<>

    我有一个描述 mongodb 数据库数据的打字稿界面 例如 interface Foo id string name string fish id string name string 我有一种方法可以构建要插入数据库的数据 例如 func
  • 如何在 Swift 中构造多个 HTTP 请求?

    我对 Swift 和编程都很陌生 我非常热衷于以正确的方式学习 因此 任何额外的提示或评论总是值得赞赏的 我正在向 api 发出 HTTP 请求 效果很好 问题是每个请求最多只能有 100 个结果 我可以设置一个可选的偏移量和限制 如果我给
  • 如何在 MATLAB 中去除图像中的高斯噪声?

    我正在尝试从图像中去除高斯噪声 我自己使用以下方法添加了噪音 nImg imnoise img gaussian 0 0 01 I now need to remove the noise using my own filter or at
  • 按 SPARQL 中的日期范围过滤

    我正在使用 Jena 的 SPARQL 引擎 并尝试编写一个查询来过滤日期范围 因为我需要在固定日期之后查找属性的值 我的日期属性采用以下格式 Fri May 23 10 20 13 IST 2014 如何编写 SPARQL 查询来获取日期
  • 为什么要使用 getter 和 setter 方法来设置类属性? [复制]

    这个问题在这里已经有答案了 可能的重复 为什么要使用 getter 和 setter https stackoverflow com questions 1568091 why use getters and setters 在 C ASP
  • Protractor - 如何为不同的测试重用相同的规范文件

    在我的量角器中conf js文件 我想多次重复使用相同的规范文件 然而 这似乎不可能 一些背景 我们从 JSON 文件中读取测试用例 启动报告 然后测试网格结果和各种 DOM 元素 所有报告都具有相同的格式 主要差异在于报告标题 数据列 实
  • Swift 中如何检查字符串是否包含字母? [复制]

    这个问题在这里已经有答案了 我正在尝试检查特定字符串是否包含字母 到目前为止我遇到过NSCharacterSet letterCharacterSet 作为一组字母 但我无法检查该组中的字符是否在给定的字符串中 当我使用此代码时 我收到一条
  • 无法访问 Blazor Server 3.0 中已处置的对象

    我有一个 Blazor 页面 其中包含以下表单提交按钮
  • 如何在詹金斯管道中抛出异常?

    我已经使用 try catch 块处理了 Jenkins 管道步骤 我想在某些情况下手动抛出异常 但它显示以下错误 org jenkinsci plugins scriptsecurity sandbox RejectedAccessExc
  • Silverlight 是否比 JavaScript 具有性能优势?

    在最近一次有关 Silverlight 的讨论中 提到了速度的优势 Silverlight 的论点是 它在浏览器中的性能比 Javascript 更好 因为它是编译 和托管 代码 然后有人指出 这一优势仅适用于 IE 因为与 Chrome
  • 如何编写代码来为android中的数组创建共享首选项?

    我正在工作android 我想在我的代码中进行共享首选项 但我不知道如何对数组进行共享首选项以及如何在另一个类中使用该共享首选项的值 这是我在一个 for 循环中的数组 urls i sitesList getWebsite get i 我
  • 使用 Week No 在 MySql 中获取一周的第一天

    如何获取周数可用的给定周的第一天 例如 当我写这篇文章时 我们位于WEEK 29 我想编写一个将返回的 MySQL 查询7 月 18 日星期日使用这个第 29 周作为唯一可用的参数 这是根据当前日期获取一周第一天和一周最后一天的准确方法 a
  • Chrome 扩展程序 .pem 文件有什么用?

    当我创建第一个 Google Chrome 扩展程序时 我按照迷宫般的说明进行操作 最终成功启动了扩展程序 我还成为了一个神秘的 pem 文件的新所有者 我被警告将其放置在安全的地方并且永远不要丢失 我认真地将文件放在安全的地方 并可能在处
  • Android 全局变量在 Service 中不起作用

    我很困惑为什么我无法从我的服务访问我的全局变量 我可以从其他活动中访问它们就好了 全局变量类 public class Global extends Application private static final String TAG G
  • C# MS Exchange 将电子邮件移动到文件夹

    Added 感谢用户 grapkulec 我正在使用 using Microsoft Exchange WebServices Data 我正在尝试将电子邮件移动到我已在 Outlook 中创建的文件夹 使用 MS Exchange 到目前