我正在编写应该连接到内部部署Exchange Server 2013的C#应用程序(服务器位置不在我们公司)。我现在有一个帐户(用户和通行证)具有只读管理员权限,并希望为其他用户阅读和设置OutOfOffice对象。我决定使用EWS托管API而非自动发现,但我有点混淆。
我尝试连接“service.UseDefaultCredentials = true”并阅读联系人 - >这很有效。
try
{
ExchangeService _service = new ExchangeService(ExchangeVersion.Exchange2013_SP1);
_service.Credentials = new WebCredentials("service.exchange", "1234", "domain");
_service.TraceEnabled = true;
_service.TraceFlags = TraceFlags.All;
_service.UseDefaultCredentials = true;
_service.AutodiscoverUrl("user2@domain.net", RedirectionUrlValidationCallback);
foreach (Contact contact in _service.FindItems(WellKnownFolderName.Contacts, new ItemView(2)))
{
var test = contact;
}
}
catch (Exception exception)
{
Console.WriteLine(exception);
}
之后我尝试使用_service.UseDefaultCredentials = false;得到错误 - > “无法找到自动发现服务。”如果这个“直接登录”是正确的方式,我不是不可靠的,在msdn上我读过“委托访问”和“模拟”(NTLM和基本身份验证)我有点困惑。有人能帮助我吗?