Получение сведений о руководителе текущего пользователя
В этом примере показано, как получить сведения (например, имя, должность и номера телефонов) о руководителе текущего пользователя.
Пример
Примечание.
Приведенный ниже пример кода представляет собой фрагмент из книги Программирование приложений для Microsoft Office Outlook 2007.
В следующей процедуре GetManagerInfo вызывает метод GetExchangeUserManager(), чтобы получить объект ExchangeUser, представляющий руководителя пользователя ExchangeUser в структуре организации. Процедура проверяет, находится ли вошедший пользователь в сети для подтверждения того, что метод GetExchangeUserManager может вернуть объект ExchangeUser. Если пользователь не находится в сети, метод GetExchangeUserManager вернет пустую ссылку. GetManagerInfo затем записывает сведения о руководителе в прослушиватели трассировки коллекции Listeners.
Если вы используете Visual Studio для тестирования этого примера кода, сначала добавьте ссылку на компонент Microsoft Outlook 15.0 Object Library и задайте переменную Outlook при импорте пространства имен Microsoft.Office.Interop.Outlook. Инструкция using не должна находиться непосредственно перед функциями в примере кода, но ее нужно добавить перед объявлением общедоступного класса. В следующей строке кода показано, как выполнить импорт и назначение в C#.
using Outlook = Microsoft.Office.Interop.Outlook;
private void GetManagerInfo()
{
Outlook.AddressEntry currentUser =
Application.Session.CurrentUser.AddressEntry;
if (currentUser.Type == "EX")
{
Outlook.ExchangeUser manager =
currentUser.GetExchangeUser().GetExchangeUserManager();
if (manager != null)
{
StringBuilder sb = new StringBuilder();
sb.AppendLine("Name: "
+ manager.Name);
sb.AppendLine("STMP address: "
+ manager.PrimarySmtpAddress);
sb.AppendLine("Title: "
+ manager.JobTitle);
sb.AppendLine("Department: "
+ manager.Department);
sb.AppendLine("Location: "
+ manager.OfficeLocation);
sb.AppendLine("Business phone: "
+ manager.BusinessTelephoneNumber);
sb.AppendLine("Mobile phone: "
+ manager.MobileTelephoneNumber);
Debug.WriteLine(sb.ToString());
}
}
}