Отправка почты с помощью EXCHANGE SERVER (Microsoft Outlook web access) в asp.net

Я знаю, как отправлять письма с помощью outlook, установленного на той же машине, где я запускаю свой код. Теперь требование здесь-доступ к exchange server (Microsoft OWA) моей организации для отправки писем в asp.net код.

это возможно? Если да,то plz бросает свет.

Thnx

обновление

есть решение. Разместите мой рабочий код здесь для любого, кто хочет помочь. удачи в кодировании !

protected void Button1_Click(object sender, EventArgs e)
{
     ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
    //service.AutodiscoverUrl("youremailaddress@yourdomain.com");

    service.Url = new Uri("https://yourwebmailaddress.com/ews/Exchange.asmx");

    service.UseDefaultCredentials = true;
    //service.Credentials = new WebCredentials("username", "password");


    EmailMessage message = new EmailMessage(service);
    message.Subject = "My auto mail from exchange server";
    message.Body = "hi everyone !";
    message.ToRecipients.Add("brad.pitt@hollywood.com");
    message.Save();

    message.SendAndSaveCopy();

    Label1.Text = "Success !";    
}

Еще Вопрос: как использовать Microsoft exchange 2003 ?? - потому что EWS там не поддерживается. Пожалуйста, обновите любую идею...?

2 ответов


вы можете отправлять электронные письма с помощью API веб-служб Exchange (EWS). EWS-это набор старомодных веб-служб ASMX, размещенных на том же сервере, что и OWA. Microsoft даже опубликовала управляемую оболочку API с открытым исходным кодом на GitHub для EWS.

вот пример того, как отправлять электронные письма с помощью EWS: http://code.msdn.microsoft.com/Send-Email-with-Exchange-50189e57

GitHub readme также включает ссылки на образцы.

обычно EWS можно найти по адресу http://yourexchangeserver/ews/exchange.asmx но с помощью управляемого API можно использовать автообнаружение для автоматического поиска адреса EWS на сервере Exchange.

обновление относительно Exchange 2003:

вы можете получить доступ к почтовому хранилищу Exchange 2003 через HTTP с помощью WebDAV. WebDAV немного больно использовать, потому что вам может потребоваться использовать проверку подлинности на основе форм (FBA), если это то, что требуется вашей установке OWA (по сравнению с EWS может использовать проверку подлинности Windows, даже если OWA на Exchange 2007/2010 использует FBA).

Я никогда не пытался отправлять письма с помощью WebDAV для обмена (хотя я использовал WebDAV для ряда других вещей), но я нашел пример на MSDN что вы можете попробовать. Он использует проверку подлинности Windows, поэтому он не будет работать, если ваш Exchange 2003 OWA настроен на использование FBA. Если вам нужно использовать FBA, дайте мне знать - у меня может быть образец кода, который вы можете использовать.


можно отправлять электронную почту через сервер exchange вашей организации с asp.net, но вы не захотите использовать OWA.

существует веб-сайт, посвященный электронной почте .Net, который должен дать вам пример кода. Видеть: http://www.systemnetmail.com/

поймите, что вам нужно будет получить администратора exchange, чтобы дать asp.net доступ компьютера к SMTP-порту (обычно это порт 25) на сервере exchange и настройка разрешений для разрешения вы должны передавать сообщения через сервер.