Is there a way to check if SmtpClient successfully delivered an email? SmtpClient.Send() does not appear to return anything other than an exception. So if the method completes is it safe to assume the email will be successfully sent to the appropriate email box? My code is below:
MailMessage emailMessage = new MailMessage();
emailMessage.Subject = SubjectText;
emailMessage.IsBodyHtml = IsBodyHtml;
emailMessage.Body = BodyText;
emailMessage.From = new MailAddress(Settings.Default.FromEmail,Settings.Default.FromDisplayName);
//add recipients
foreach (string recipientAddress in RecipientAddresses.Split(new char[{','},StringSplitOptions.RemoveEmptyEntries))
emailMessage.To.Add(recipientAddress);
using (SmtpClient smtpClient = new SmtpClient())
{
smtpClient.Send(emailMessage);
}
When i run my page on https it giving me error Do you want to view only the web page content that was delivered securely?
This web page contains content that will not be delivered using a secure https connection. Which could compromise the security of the entire web page. This error i am getting when running it in IE8 In Morzilla i am having warning...Contains Unauthenticated Content. i have checked my page source code but not find any http content all are having relative path etc.
I have an ASP.Net app that allows a user to write text into a Telerik RadEditor control and then send an email.
For some reason I'm sometimes getting strange characters showing up in the email that is generated.
For example if I put the word Test's into the RadEditor box and send it... the email shows up with the text changed to: Test’s.
It seems as though the ' character was used in place of ' because if I use the later, the text would show up just fine. If I pull up the saved record within the ASP.Net apps interface it looks just fine. It also appears just fine when I view the text within the recorded of the MS SQL table it was stored in.
I'm using MailMessage to create the email. I've check the string being sent at the point just before I use SmtpClient to send the message and it looks just fine at his point. Once the email message shows up however I get the strange text (Test’s).
I'm guessing that I have an encode/decoding issue but I'm not sure how I would go about fixing this.
Continued--->
I have tried to add it to the constructor of my email class with/without mybase but that had no effect.
Public Sub New(ByVal EmailDate As DateTime, ByVal LogoPath As String) MyBase.New() MyBase.BodyEncoding = Encoding.GetEncoding("iso-8859-1") 'BodyEncoding = Encoding.GetEncoding("iso-8859-1") Me.EmailDate = EmailDate Me.LogoPath = LogoPath End Sub
I also tried adding it to the code behind of the form that calls the email class just before I create a new SmtpClient but that did not seem to be correct either.
Try returnEmail.BodyEncoding = Encoding.GetEncoding("iso-8859-1") Dim smtpCli As New SmtpClient smtpCli.Send(returnEmail) Catch ex As Exception ScriptManager.RegisterStartupScript(Me, Me.GetType, "smtpError", "alert('There was an error sending the email: * " & ex.Message & "');", True) End Try
I am trying to make a confirmation email. The mail should contain data about the customers order.Thought the best solution was to reuse the user control from my confirmation page. But how? The following code only generates a url to the control:
I'm having problems with the "From". No matter what i put in, it is always getting filled out with whatever account i'm using to log into the smtp services. Here is the code.. not sure what i'm doing wrong by the examples I've looked at.
[Code]....
I've checked my mFrom property and it has the correct email address i'm trying to send it from.. Is the from just always filled out with the info that the email is sent from
I am having some problems sending emails (using gmail). I have an application that allows a user to send an email, request info, etc. I want the email "from" address to be from the initiating user. I set up the settings in the web.config for the first time. Previously, I had always set up the info directly in the code. The email is sending just fine. However, the from address shows the user name correctly but the email address in the one in the web.config.ie. "User From Name <web.config from address>". In the code, the MailMessage object shows it correctly ("User From Name <User from address>"), and the SMTPClient From address shows the web.config from address. This is going to be confusing for the recipient of the emails to see the config address with the user name.
I tried removing the From address from the config(leaving the required userIDpw for the email logon, but no difference. I also tried removing the config mail settings completely and putting it back in the code. Still no luck.
How can I get the from address to be the valid email address in resulting email?
I know I'm missing something. I'm getting this error when trying to use the script below it. The data I need comes up fine but I don't know how to get it into a loop that works for Bcc. Ideas? If a hard code a single address into bcc it works fine. If I append the body with the datatable records to see if the data is actually there, all the data expected is there.Unable to read data from the transport connection: net_io_connectionclosed.Description:An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.Exception Details: System.IO.IOException: Unable to read data from the transport connection: net_io_connectionclosed.
public void hthSubscriberMail(string subject, string body) { string connectionString;
I have 3 issues that I am attempting to resolve in development with using an aspx page to send email (both internal and external).1. Using the ddl.SelectedValue for the To email address doesn't send the email to the person, but will still cc and bcc the hard-coded recipients. If I replace the(DropListVendor.SelectedValue.Trim()) withmyemail@chuckanddons.com it sends just fine. However I need my users to be able to select which vendor to email, hence the Drop Down list for Vendor. I'll post my code below.
i am trying to send emails using SMTP MailMessage but i have a problems, i got the following error: Failed to send to pm@[URL] (530 5.7.0 Must issue a STARTTLS command first. g31sm24378313ibh.22 ) my code is the following:
In my vague understanding, any texts are transferred over the internet as streams of bytes. And when you change texts to and from bytes, you need encoding. MailMessage.Body is just a plain string(text) and it gets sent over the internet as emails. Why is it that it can correctly display Chinese characters without even having to specify the encoding?
am sending email to the users using smtp client and MailMessage class.i have been adding the addresses of multiple receivers in the to property of the object of MailMessage class. the problem is that the receiver can see the email addresses of other receipents. is there any way to hide the email addresses of other receipents.i mean setting some property or something like that.otherwise i will be left with only option to send individual email to the users.
I'm experiencing a to me mysterious error when sending e-mails through a SMTP-server from an ASP.NET web application. I get the famous error "unable to relay for xxx@yyy.zzz". What's mysterious to me is that when I cut and paste the exact same code that sends the e-mail into an usual .NET Windows Forms application, send the e-mail with this application, it all works just fine. This made me think that perhaps the problem is that the ASP.NET application runs as NETWORK SERVICE while the Windows Forms application runs on a domain user account, but it turns out that I have another ASP.NET application sending e-mail through the same SMTP-server running under NETWORK SERVER at the same IIS, and this application does not experience this problem.
I've further tried to send e-mails through the SMTP-server manually by telnet the smtp-server on port 25 and running the SMTP-protocol manually, and it all works fine. The SMTP-server is not configured with any kind of authentication or SSL.
Another mysterious fact is that the ASP.NET application can send e-mails from an adress within the same domain to an e-mail adress within the same domain, but not to any adress outside of the domain. But the Windows Forms application, that uses the exact same code, can send e-mails from any adress to any adress both within AND outside of the domain.
So to summarize:
The ASP.NET application can send e-mails from addresses within the domain to adresses within the domain, but not to addresses outside of the domain. A Windows Forms application running the same code on the same computer can send e-mails from ANY address to ANY address. Another ASP.NET application on the same IIS running under the same account (NETWORK SERVICE) can send e-mails using the same SMTP-server from ANY adress to ANY adress. There is no authentication configured on the SMTP-Server. Both the ASP.NET application and the Windows Forms application utilizes the System.Net.Mail.SmtpClient class to send a System.Net.Mail.MailMessage.
The code that sends the e-mail massage is:
private void button1_Click(object sender, EventArgs e) { MailMessage mesasge = new MailMessage(txtFrom.Text, txtTo.Text, "Test mail", txtBody.Text); SmtpClient client = new SmtpClient(); if (!(string.IsNullOrEmpty(txtUserName.Text))) //Is false since txtUserName.Text is empty client.Credentials = new System.Net.NetworkCredential(txtUserName.Text, txtPassword.Text); client.EnableSsl = false; client.Host = txtServer.Text; client.Port = 25; try { client.Send(mesasge); } catch (Exception ex) { txtResponse.Text = ex.Message; } }
As far as I can understand, this should be a matter of configuration rather than coding issues.
However it act weird in throwing an error ("The specified string is not in the form required for an e-mail address.") as well as sending the mail...but sending it to whichever address was specified with "From".Can't set "To" (it does not have a "Set").
I have a detailsview with an update button one of the update fields is a checkbox which when is checked I want to automatically update a date field of when the checkbox was checked, am I going the right way with this code....... as I am getting a number of errors
Dim i As Integer For i = 0 To detailsview2.Rows.Count - 1 Step i + 1 Dim row As GridViewRow = GridView1.Rows(i) [code]....
i have a UP and DOWN buttons ouside a gridview and a checkbox inside the templated field .I will check the checkbox to sleect a row , after that if i click on UP button the checkbox above the selected checkbox should be selected.
same with when i click on DOWN button the checkbox below the selected checkbox should be selected.
I have a check box in the grid.IF IsChecked has a value checkbox should be checked else not.Should i check the check box in the ItemDataBound event or will it get checked automatically.
I have a grid view with two columns...one column has a no. like (123) and a check box....which user can checked or unchecked......all I need to do is that I need to disable the man handling of that check box......rather I would like to see a seperate grid view with the same no. of rows as of the first and in this gridview I may allow to type in or scan the no. and if this scanned or typed number matches any no. in the first gridview number then the corresponding check box should be checked/unchecked.