Estoy usando EWS y deseo obtener la lista global de direcciones de intercambio para la compañía. Sé cómo recuperar la lista de contactos personales.¿Cómo recupero contactos globales con los servicios web de Exchange (EWS)?
Todas las muestras en la documentación de la API se ocupan de actualizar la información del usuario, pero no específicamente de cómo recuperarlas.
Incluso he intentado lo siguiente para enumerar las carpetas, pero no arroja los resultados correctos.
private static void ListFolder(ExchangeService svc, FolderId parent, int depth) {
string s;
foreach (var v in svc.FindFolders(parent, new FolderView(int.MaxValue))) {
Folder f = v as Folder;
if (f != null) {
s = String.Format("[{0}]", f.DisplayName);
Console.WriteLine(s.PadLeft(s.Length + (depth * 2)));
ListFolder(svc, f.Id, depth + 1);
try {
foreach (Item i in f.FindItems(new ItemView(20))) {
Console.WriteLine(
i.Subject.PadLeft(i.Subject.Length + ((depth + 1) * 2)));
}
} catch (Exception) {
}
}
}
}
Mientras que la cuestión se ha planteado ya ofertas (How to get contact list from Exchange Server?) esta pregunta específicamente con el uso de sistemas de alerta temprana para obtener la lista global de direcciones, mientras que esta pregunta le pide consejo a un nivel general.
+1 porque en realidad está respondiendo a su pregunta. Aunque solo quería reiterar que esto solo captará a los usuarios que tengan buzones en Exchange, que es un subconjunto de usuarios en AD. –
¿No veo cómo responde esto a la pregunta? Brett menciona que sabe cómo obtener esta información para una carpeta específica (Contactos) pero no cómo hacerlo para la Lista global de direcciones. – Miles