序列化 Microsoft.Office.Interop.Outlook.Rule 个对象

Serialzing Microsoft.Office.Interop.Outlook.Rule object

所以我正在寻找一种从 Outlook 插件中序列化 outlook 规则的方法。

获取规则非常简单

var rules = Application.Session.DefaultStore.GetRules();
foreach (Outlook.Rule rule in rules)
{
    //Serialize the rule
}

但到目前为止,我还没有找到任何 OK 方法来序列化 Rule 对象,以便它可以存储在文件中或通过网络发送。

我能想到的唯一方法是实现 Rule 中使用的所有 类,然后将元素一个一个地复制到它们,然后序列化那些 类 使用XML/JSON 序列化器。但是这种方法的问题是嵌套的数量 类 非常高。 有没有更简单的方法来序列化 Rule COM 对象?

不,Outlook 规则不能使用 Outlook 对象模型序列化。另请记住,规则可以包含本地数据(例如文件夹条目 ID)- 如果在不同的存储中恢复规则,则此类数据将不起作用。