C# 将Exchange附件保存到域对象,然后删除电子邮件

C# 将Exchange附件保存到域对象,然后删除电子邮件,c#,.net,web-services,ienumerable,exchangewebservices,C#,.net,Web Services,Ienumerable,Exchangewebservices,这是主要问题 我正在尝试将存储库模式用于以下内容: public interface IExchangeInboxRepository { IEnumerable<InboxEmail> GetAllEmails(); } public class InboxEmail { public IEnumerable<FileAttachment> Attachments { get; set; } public string Fro

这是主要问题

我正在尝试将存储库模式用于以下内容:

public interface IExchangeInboxRepository
{
   IEnumerable<InboxEmail> GetAllEmails();
}
   public class InboxEmail
   {
      public IEnumerable<FileAttachment> Attachments { get; set; }
      public string FromAddress { get; set; }
      public string Subject { get; set; }
      public string Content { get; set; }
      public DateTime DateArrived { get; set; }
   }
我想要完成的是抓取电子邮件并创建一个域对象,如下所示:

public interface IExchangeInboxRepository
{
   IEnumerable<InboxEmail> GetAllEmails();
}
   public class InboxEmail
   {
      public IEnumerable<FileAttachment> Attachments { get; set; }
      public string FromAddress { get; set; }
      public string Subject { get; set; }
      public string Content { get; set; }
      public DateTime DateArrived { get; set; }
   }
问题是,从我在本例中尝试使用EWS可以看出:

当我尝试在域obj中的附件列表中加载fileAttachment.Load时,它正在调用Exchange服务。这没什么大不了的,但我希望存储库在建立IEnumerable后删除这些电子邮件,以便返回。如果我删除电子邮件,很明显,当我尝试访问文件附件时,它会抛出一个异常,即存储是空的。有没有办法持久保存文件附件

我基本上希望持久化附加在域Obj中的文件,并在使用EWS对电子邮件进行迭代后删除电子邮件,并将其返回给存储库的用户