2014-03-29 64 views
0

好吧,基本上我的网站上有一个评论表。人们只是在评论框中发表评论,并将评论通过电子邮件发送给我的电子邮件。电子邮件部分工作正常,并通过。但是,当我尝试清除表单域时出现错误。它给我一个错误说:参数'from'不能是空字符串。参数名称:从

错误:参数'从'不能是一个空字符串。 参数名称:从

所以任何人有任何想法?就像我说的电子邮件部分工作正常,它只是清除场是给我找麻烦

这里是代码:

Imports System.Web.Mail 
Imports System.Text 

Partial Class Pages_ContactUs : Inherits System.Web.UI.Page 

Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 

    Dim body As String = "From: " + YourName.Text + " " + Environment.NewLine + "Email: " + YourEmail.Text + Environment.NewLine + Environment.NewLine + "Message: " + Environment.NewLine + Comments.Text 

    Dim MM As New System.Net.Mail.SmtpClient 
    MM.EnableSsl = True 
    MM.Host = "smtp.gmail.com" 
    Dim cred As New System.Net.NetworkCredential("[email protected]", "myPassword") 
    MM.Credentials = cred 
    MM.Send(YourEmail.Text, "[email protected]", Subject.Text, body) 
    ClearFields() 
    lblEmail.ForeColor = Drawing.Color.Green 
    lblEmail.Text = "Your message has been sent successfuly" 
    lblEmail.Visible = True 

End Sub 

Protected Sub ClearFields() 
    YourName.Text = "" 
    YourEmail.Text = "" 
    Comments.Text = "" 
    Subject.Text = "" 
End Sub 
End Class 

回答

0

你必须提供它,只是把它变成你。基本模式:

Using SmtpServer As New SmtpClient() 
    Using mail As New System.Web.Mail.MailMessage() 
    Try 
     SmtpServer.UseDefaultCredentials = True 
     SmtpServer.EnableSsl = True 
     SmtpServer.Credentials = New Net.NetworkCredential(un, pw) 
     SmtpServer.Port = 25 
     SmtpServer.Host = "smtp.address" 
     mail.From = New MailAddress(sender) 
     mail.To.Add(some address) 
     mail.Subject = subject 
     mail.Body = body 
     mail.Sender = New MailAddress(sender) 
     SmtpServer.Send(mail) 
    Catch 
    End Try 
    End Using 
End Using 
+0

没有为我工作。它表示'MailMessage'不明确,从命名空间或类型'System.Net.Mail',System.Web.Mail' – user2821331

+0

导入使用完全限定名称空间。 – OneFineDay

+0

现在确定它说我的用户名和密码没有声明。它可能无法访问,由于其保护级别 – user2821331

相关问题