在用C#收取Exchange 邮箱中的邮件时,我们必须要指定用户名,密码,域名三个信息,而另外的一个信息即为邮箱地址,以下为示例:
//连接服务器
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.Credentials = new NetworkCredential("用户名", "密码", "域名");
service.AutodiscoverUrl("邮箱地址");
还有一种方式是直接指定该Exchange服务器的wsdl地址,代码如下:
//连接服务器
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.Credentials = new NetworkCredential("用户名", "密码", "域名");
service.Url = new Uri(http://server/EWS/Exchange.asmx);
这两种方式的区别:
第一种方式,直接写邮箱的地址,它会自动去定位你的服务器地址,这样你的服务器地址变了,代码也不会修改,但缺点是经常性地报地址定位错误,或找不到(这个我不晓得是为何)
第二种方式,优点是定位比较快一点,而且准,基本上不会报错,缺点就是如果服务器的地址变了,那么还需要修改代码。
个人总结:第二种方式较好,为了避免错误,建议从配置文件中读取该地址,以便方便管理。