asp.net - 如何使用 SMTP 通过 Exchange Server 发送邮件

标签 asp.net exchange-server smtpclient

我想在没有代码的情况下运行

NetworkCredential nc = new Net.NetworkCredential("USERNAME", "PASSWORD"). 

仅使用 Exchange 主机(服务器名称)和端口

我收到此代码的错误:邮箱不可用。服务器响应为:5.7.1 客户端无权作为此发件人发送
protected void SendEmail(object sender, EventArgs e)
{
    SmtpClient smtpClient = new SmtpClient("ExchangeServerName",25);
    MailMessage message = new MailMessage();
    try
    {
        MailAddress fromAddress = new MailAddress("bala@OfficeName.com", "From Me");
        MailAddress toAddress = new MailAddress("bala@OfficeName.com", "To You");
        message.From = fromAddress;
        message.To.Add(toAddress);
        message.Subject = "Testing!";
        message.Body = "This is the body of a sample message";
        smtpClient.UseDefaultCredentials = true;
        System.Net.NetworkCredential nc = CredentialCache.DefaultNetworkCredentials;
        smtpClient.Credentials = (System.Net.ICredentialsByHost)nc.GetCredential("ExchangeServerName", 25, "Basic");
        smtpClient.Send(message);
        lblText.Text ="Email sent.";
    }
    catch (Exception ex)
    {
        lblText.Text = "Coudn't send the message!\n  " + ex.Message;
    }
}

最佳答案

我已经做了。有关我的代码的更多详细信息,请使用 this link .

下面的代码工作正常

服务器:Windows Server 2003、Windows Server 2008、Windows Server 2008 R2

IIS:6.0、7.0

.Net Frame Wotk : 2.0,3.5,4.0

string sMessage;
SmtpClient smtpClient = new SmtpClient();
MailMessage message = new MailMessage();
try
{

 //you can provide invalid from address. but to address Should be valil
MailAddress fromAddress = new MailAddress("bala@technospine.com", "BALA");

smtpClient.Host = "Exchange Server Name";
smtpClient.Port = 25;
//smtpClient.Port = 587;


smtpClient.UseDefaultCredentials = true; 

message.From = fromAddress;
message.To.Add(bala@technospine.com); //Recipent email 
message.Subject = _subject;
message.Body = _details;
message.IsBodyHtml = true;

//smtpClient.EnableSsl = true; 

smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;

smtpClient.Send(message); 

sMessage = "Email sent.";
}
catch (Exception ex)
{
sMessage = "Coudn't send the message!\n " + ex.Message;
}


lblMailStatus.Text = sMessage;

关于asp.net - 如何使用 SMTP 通过 Exchange Server 发送邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11417344/

相关文章:

c# - 从代码隐藏更改 LoginView 角色组模板

JavaScript - 如何从另一个字符串中删除字符串的所有实例和字符串的一部分/如何在提交时将字符串附加到表单参数?

asp.net - Visual Studio 2013 中禁止 HTTP 错误 403.14

c# - 在 .NET 服务器上使用计时器

exchange-server - 我如何检查交换连接是否有效? (来自 ews)

coldfusion - 无法使用 cfexchangeConnection 访问委派日历

c# - 确认邮件

email - Office365:使用 SMTP 发送消息并在服务器上保留副本

python - EWS 推送订阅,如何知道什么时候到期?

java - 从 Javamail 中的 smtp 服务器获取 SSL 版本