2013-02-05 109 views
0

我正在做一個財產清單的網站,現在正準備爲每個屬性聯繫表單。更改電子郵件發件人地址

由於我的客戶也使用車票系統,解析從專用郵箱中的電子郵件,它需要我來配置的聯繫方式以電子郵件的專用郵箱爲他們的系統把它撿起來。我正在使用ASP C#。

我需要改變幫助「從」的聯繫表格的形式發送者的電子郵件地址,地址,如下所示代碼:

這是我的aspx.cs

protected void SendMail() 
{ 
    var fromAddress = "[email protected]"; 
    var toAddress = "[email protected]"; 
    const string fromPassword = "password"; 
    string subject = PropertyNameOnContact.Text.ToString(); 
    string body = "Subject: Online Enquiry for " + PropertyNameOnContact.Text + "\n"; 
    body += "Email: " + txtemail.Text + "\n"; 
    body += "From: " + txtname.Text + "\n"; 
    body += "Preferred contact Method: \n" + PreferredContact.Text + "\n"; 

    var smtp = new System.Net.Mail.SmtpClient(); 
    { 
     smtp.Host = "smtp.gmail.com"; 
     smtp.Port = 587; 
     smtp.EnableSsl = true; 
     smtp.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; 
     smtp.Credentials = new System.Net.NetworkCredential(fromAddress, fromPassword); 
     smtp.Timeout = 20000; 
    } 

    smtp.Send(fromAddress, toAddress, subject, body); 
} 
+4

問題是什麼?你有什麼問題? –

+1

將'fromAddress'設置爲'txtemail.Text'如何? –

+0

如果你想'txtEmail'字段包含來自值'fromAddress',你需要指定它像'txtemail.Text = fromAddress'。請問可以理解的問題,不可能理解你想要什麼。 – Arnthor

回答

2

對於這樣的聯繫表格,用戶填寫的地址不應該是從地址開始使用的地址。它應該是回覆地址。這樣做是爲了使接收郵件服務器可以進行正確的驗證。

我建議您創建一個MailMessage對象,您可以在其中設置速記SmtpClient.Send不具備的所有這些參數。您可以在MailMessage.ReplyToListMailMessage.From中添加應回覆的地址。

SmtpClient.Send方法還接受MailMessage對象,所以它應該是相當容易的。

這裏的MSDN上的對象MAILMESSAGE: http://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.aspx

1

由於知道有兩種方法。這將不會影響現有的任何過程中, 試試這個

  • 得到從從數據庫電子郵件-ID(FROMADDRESS)
  • 配置從EMAIL_ID(FROMADDRESS)在Web配置文件其中U可以訪問它的整個應用程序。

ü可以改變他們時,ü希望。而無需更改C#源代碼。

相關問題