我想創建一個發送電子郵件應用程序,並發現一些錯誤。電子郵件將使用gridview中的複選框發送給特定的收件人。 的條件是:錯誤發送電子郵件:在郵件標題中找到無效字符:';'
如果coulmn 16電子郵件不爲空,然後將電子郵件直接發送。 - >這已經工作
如果第16列中的電子郵件爲空,那麼電子郵件將發送給第17列中的收件人。 - >它在這部分中引發錯誤。
這裏是我發送郵件代碼:
Dim X As Integer
For X = 0 To GridView1.Rows.Count - 1
Dim chkBox As CheckBox = CType(GridView1.Rows(X).Cells(18).Controls(1), CheckBox)
If chkBox.Checked = True Then
Dim email2 As String
If GridView1.Rows(X).Cells(16).Text <> "" Then
email2 = Trim(GridView1.Rows(X).Cells(16).Text)
Else
email2 = Trim(GridView1.Rows(X).Cells(17).Text)
End If
Try
Dim EmailMessage As System.Net.Mail.MailMessage = New System.Net.Mail.MailMessage
EmailMessage.From = New MailAddress("mailaddress.bla.com")
EmailMessage.To.Add(email2)
EmailMessage.Subject = "Attire Request"
EmailMessage.IsBodyHtml = True
Dim link As String = "some link"
EmailMessage.Body = "Please login by Using this link <a href=""" & link & """>Click here </a>"
Dim smtp As New SmtpClient(Server2)
Dim basicAuthenticationInfo As New System.Net.NetworkCredential(Username2, Password2)
smtp.Credentials = basicAuthenticationInfo
smtp.Send(EmailMessage)
Catch ex As Exception
' lblError.Text = lblError.Text & ex.Message & " " & ex.InnerException.ToString
lblError.Text = ex.Message
lblError.Visible = True
End Try
它拋出一個錯誤:一個無效字符在郵件標題中找到:「;」。 你有什麼建議如何解決這個問題。 編輯:代碼循環
感謝進步。
選擇多行同時調試是什麼'email2'的價值? – PawanS
我認爲這是由於'GridView1.Rows(X).Cells(17).Text'中的輸入錯誤發生的,請檢查字段值以進行確認。 – Suji
@PawanS它顯示昏暗的電子郵件作爲字符串... –