私は、EWS を使用して Exchange Server のメールを読み取る WinForms アプリケーションに取り組んでいます。Exchange はバージョン 2007 です。EWS を介して電子メールを正常に読み取り、移動、削除、および送信できました。メールボックスの認証と選択に自動検出を使用しています。唯一の問題は、送信者の電子メール アドレスを取得できないことです。私が得たのは差出人の名前だけで、住所はありません。
これまでの私のコードは次のとおりです。
Service1 = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
Service1.Credentials = new WebCredentials(Properties.Settings.Default.Username, Properties.Settings.Default.Password);
Service1.Url = new Uri(Properties.Settings.Default.Serviceurl);
EmailMessage messageAtt = EmailMessage.Bind(Service1, item.Id, new PropertySet(BasePropertySet.IdOnly, ItemSchema.Attachments, ItemSchema.HasAttachments, EmailMessageSchema.IsRead));
EmailMessage messageData = (EmailMessage)item;
foreach (Attachment attachment in messageAtt.Attachments)
{
String from = messageData.Sender.Address.ToString();
}
これは、デバッグ時に得られるものです。
ここで私が間違っていることを誰かに提案してもらえますか? 私が書いたものに問題がありますか、それとも Exchange Server のセットアップの問題でしょうか?