解决 SMTP 电子邮件发送中的“无法分配属性”错误
通过 SMTP 发送电子邮件有时会引发令人沮丧的“无法分配属性”错误。当创建 MailMessage
对象后尝试设置其收件人(“收件人”)或发件人(“发件人”)地址时,通常会发生这种情况。
问题源于 To
的 From
和 MailMessage
属性是只读的。 这意味着您必须在对象初始化期间设置这些属性。 正确的做法是:
<code class="language-csharp">using System.Net.Mail; // ... other code ... MailMessage mail = new MailMessage("from@example.com", "to@example.com"); SmtpClient client = new SmtpClient(); client.Port = 25; client.DeliveryMethod = SmtpDeliveryMethod.Network; client.UseDefaultCredentials = false; client.Host = "smtp.gmail.com"; mail.Subject = "Test Email"; mail.Body = "This is a test email body."; client.Send(mail);</code>
通过直接在 MailMessage
构造函数中提供发件人和收件人地址,可以避免只读属性错误并确保成功发送电子邮件。 请记住将 "from@example.com"
和 "to@example.com"
替换为您的实际电子邮件地址。
以上是为什么在发送SMTP电子邮件时会遇到'无法分配的属性”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!