从代码隐藏在Exchange服务器上创建公用文件夹

cri*_*jax 5 c# vb.net exchange-server exchangewebservices public-folders

我必须在VB.Net Framework 4中创建一个项目管理应用程序,它应该在Exchange服务器的公用文件夹中创建一个客户端文件夹.

我认为创建公用文件夹的唯一方法是通过管理控制台.有没有办法连接到Exchange服务器并从代码执行创建命令文件,但我不知道如何.

还有另外一种方法吗?

Jak*_*sen 7

如果您使用的是Exchange Server 2007或更高版本,则可以使用Exchange Web服务(EWS)轻松创建文件夹.EWS是Exchange服务公开的一组SOAP服务,可以很容易地以编程方式在Exchange上执行许多不同的任务.

调用EWS的最简单方法是通过Exchange Web Service Managed API,它是一个.NET包装器,用于从.NET客户端调用EWS.

通过托管API使用EWS时,首先要连接到Exchange Server.EWS的端点通常位于地址"/EWS/exchange.asmx",如下所示:

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

您还可以使用自动发现连接到服务器.

成功连接后,您可以通过以下方式创建公用文件夹(另请参阅MSDN):

var folder = new Folder(service);
folder.DisplayName = "New Folder";
folder.Save(WellKnownFolderName.PublicFoldersRoot);
Run Code Online (Sandbox Code Playgroud)

我知道你把你​​的问题标记为VB.NET,但请原谅我的C#代码示例.