s459082427 2018-12-13 08:23 采纳率: 0%
浏览 2846
已结题

C# 通过Exchange发送邮件问题

乙方,需要在其他公司内部服务器做一个用Exchange发送邮件的小程序
之前的账号没了,分不多了,全给出来了
代码如下:

            ExchangeVersion version = ExchangeVersion.Exchange2010;
            ExchangeService service = new ExchangeService(version);
            ServicePointManager.ServerCertificateValidationCallback = delegate(
                     object sender,
                     X509Certificate certificate,
                     X509Chain chain,
                     SslPolicyErrors sslPolicyErrors)
            {
                return true;
            };

            service.Credentials = new NetworkCredential(setting.Account, setting.Password, setting.Domain);
            service.TraceEnabled = true;
            if (!String.IsNullOrEmpty(setting.Server))
                service.Url = new Uri(setting.Server);
            else
                service.AutodiscoverUrl(setting.Address, new Microsoft.Exchange.WebServices.Autodiscover.AutodiscoverRedirectionUrlValidationCallback(url => true));

            EmailMessage emessage = new EmailMessage(service);
            emessage.Subject = message.Subject;
            emessage.ToRecipients.AddRange(message.To.Select(o => o.Address));
            emessage.Body = new MessageBody() { BodyType = BodyType.HTML, Text = (message.Body.Replace("\n", "<br />")).Replace("\r\n","<br />") };

            emessage.SendAndSaveCopy();

如果用AutodiscoverUrl,直接就报错“The Autodiscover service couldn't be located"
他们IT帮配置的outlook上是可以正常发送邮件的,我发现他们设置了代理服务器,身份验证方式选的NTML。。我用代理服务器的地址加上“/EWS/Exchange.asmx”放进URL,报错就变成了 403 forbidden了。。。问甲方IT,他们IT说OUTLOOK能发就不管了。。。跪求

  • 写回答

1条回答 默认 最新

  • s459082427 2018-12-13 08:32
    关注

    顶一下自己,哎,我也知道这个问题很少见,我网上都查不到

    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大