5

我尝试过这个并没有太大成功。基本上我需要使用 EWS 远程登录到 Exchange。

问题是我不知道用户是否登录正常,或者凭据是否错误,因为我什么也没得到!如果我提供了错误的凭据,软件就会继续运行!

有什么我遗漏的吗,我检查了有关 EWS 的 MSDN 资料,它向您展示了如何连接到交换,但没有关于验证凭据的内容!

下面是我目前必须连接的代码。

public void connect(string Email, string Password)
    {
        try
        {            
            _useremail = Email;
            _userpass = Password;

            // Define the credentials to use.
            var credentials = new WebCredentials(_useremail, _userpass);

            _ExchangeServer = new ExchangeService(ExchangeVersion.Exchange2010_SP1);
            _ExchangeServer.Credentials = credentials;
            _ExchangeServer.Url = new Uri(_ExchangeEWSURL);
            _ExchangeServer.Timeout = 60;
            _ExchangeServer.KeepAlive = true;
            _ExchangeConnected = true;
        }
        catch (Exception ex)
        {
            _ExchangeConnected = false;
            throw ex;
        }
    }

正如您目前所看到的,我只是在类中将 bool 值设置为 true。有任何想法吗?

4

1 回答 1

10

为了检查给定的凭据是否有效,您必须查询您希望用户有权访问的资源(日历、收件箱、联系人等)。没有明确的登录方法 - 当您请求用户资源(通过FindItems、、等FindFoldersFindAppointments)时,身份验证会隐式发生。

于 2012-04-30T13:54:58.987 回答