Проверьте, является ли текущий пользователь членом списка рассылки Exchange - Outlook C # - PullRequest
0 голосов
/ 26 сентября 2019

Я хочу выяснить, является ли текущий пользователь Outlook членом определенного списка рассылки Exchange.Если он есть, то он должен видеть детскую форму, а если нет;тогда он должен увидеть окно сообщения.

Мой следующий код работает до определенного момента, если пользователь является членом DistList, он получает дочернюю форму, но я не знаю, как проверить, показать ему окно сообщения, если онне участник.

                string UserName = (string)application.ActiveExplorer().Session.CurrentUser.Name;
                string PersonalPublicFolder = "Public Folders - " + application.ActiveExplorer().Session.CurrentUser.AddressEntry.GetExchangeUser().PrimarySmtpAddress;
                Outlook.MAPIFolder contactsFolder = outlookNameSpace.Folders[PersonalPublicFolder].Folders["Favorites"];

                Outlook.DistListItem addressList = contactsFolder.Items["ContactGroup"];

                if (addressList.MemberCount != 0)
                {
                    for (int i = 1; i <= addressList.MemberCount; i++)
                    {
                        Outlook.Recipient recipient = addressList.GetMember(i);
                        string contact = recipient.Name;
                        if (contact == UserName)
                        {
                                var assignOwnership = new AssignOwnership();
                                assignOwnership.Show();
                        }
                    }
                }

Любая помощь будет оценена.

Спасибо.

1 Ответ

1 голос
/ 28 сентября 2019

Использовать Application.Session.CurrentUser.AddressEntry.GetExchangeUser().GetMemberOfList() - он вернет AddressEntries объект, который содержит все DL, членом которых является пользователь.

Будьте готовы к обработке нулей и ошибок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...