5

Devo creare un'applicazione di gestione del progetto in VB.Net Framework 4 che dovrebbe creare una cartella client in una cartella pubblica nel server di Exchange.Creazione di una cartella pubblica su un server Exchange dal codice

Penso che l'unico modo per creare una cartella pubblica sia attraverso la console di gestione. C'è un modo per connettersi al server Exchange ed eseguire il file di comando di creazione dal codice, ma non so come.

C'è un altro modo?

risposta

7

Se si utilizza Exchange Service 2007 o versione successiva è possibile creare facilmente cartelle utilizzando Exchange Web Services (EWS). EWS è un set di servizi SOAP esposti dal servizio di Exchange che semplifica in modo programmatico diverse attività su Exchange.

Il modo più semplice per chiamare EWS è tramite il Exchange Web Service Managed API, che è un wrapper .NET per chiamare EWS da un client .NET.

Quando si utilizza EWS tramite l'API gestita, si avvia connettendosi al proprio Exchange Server. L'endpoint di EWS in genere si trova all'indirizzo "/EWS/exchange.asmx" come mostrato di seguito:

var service = new ExchangeService(ExchangeVersion.Exchange2010_SP1); 
service.Url = new Uri("https://server/EWS/exchange.asmx"); 
service.Credentials = new NetworkCredential("username", "password", "domain"); 

Si potrebbe anche usare autodiscovery per la connessione al server.

Dopo aver collegato con successo, è possibile creare una cartella pubblica nel modo seguente (vedi anche MSDN):

var folder = new Folder(service); 
folder.DisplayName = "New Folder"; 
folder.Save(WellKnownFolderName.PublicFoldersRoot); 

So che la tua domanda contrassegnati come VB.NET, ma ti prego di perdonare i miei C# esempi di codice.