C# - Using SmtpClient.Send To Send ~500-2500 Emails What Way Would Be Faster.
May 6, 2010
I'm needing to send around 500-2500 emails out at a time to internal email accounts. I'm wondering which was would be faster both for the mail server and for my client app. Should I send multiple emails with just different TO addresses, or just one with multiple BCC addresses? I tried testing this by sending a bunch to my own email and the multiple emails method work, but with the BCC and a single message I only get that single message in my inbox. Shouldn't I be getting as many copies as the number of times I put my address in the BCC line?
My site sends confirmation emails from a purchase. 95% of the time, it works. The other 5% after clicking the 'Confirm' button that runs the payment and should send the email, i get the following exception:
Details: Exception: Failure sending mail.
Inner Exception: Unable to connect to the remote server
Inner Exception(2): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 72.167.234.197:25
The code to send the email is this:
Dim smtpClientPayPalSuccess As System.Net.Mail.SmtpClient = New System.Net.Mail.SmtpClient() smtpClientPayPalSuccess.Host = "relay-hosting.secureserver.net" smtpClientPayPalSuccess.Send(mailMessagePayPalSuccess)
FYI: I have confirmed with the hosting that I don't need any credentials, or a different port number than 25. This is also running over https. why this would be happening only a small percentage of the time?
If I want to send an e-mail (up to 30) in response to user's action, what execution context do I do it from?
Do I do a sync call (mail server is in the same data center, so actual sending is fast)? Do I spawn a thread and send it from there? such that each user-request-to-send mail gets handled by a new thread? Do I have a background thread that handles a queue of e-mails?
The biggest issue I think, is that it is a shared web hosting. So I don't know what's a good way to install/start a windows service, or start a dedicated thread.
Details: ASP.NET MVC app, hosted on IIS 7.0 integrated mode, on discountasp.net using discauntasp.net smtp server.
Is there a better way? What's a "standard" way to accomplish this?
I need to send emails to users from my application at regular intervals.
Condition is: When a user registers to my site a confirmation mail will be send to the user. I have already done it. And if the user doesn't confirm the registration within 12 hours through that confirmaton mail the application must have to send a new confirmation mail to the same user and this should repeat for every next 12 hours until that user confirm the registration.
My Problem: When a user registers a new timer should have to be created for that user for sending emails in intervals of 12 hours. The email sending time for each user is based on his registration time. So we cannot use a common timer for sending mail to users.
I need to send birthday emails every day. I need something to check everyday on my database for birthdays, but I don't have any components to do that and I dont have rights to install it on my webserver. Is there a way to do it without installing anything?
I'm trying to send e-mails using net.mail. It works well until an e-mail from the list to send be invalid. if one is invalid it stops the application and i don't wanna this... if the e-mail is invalid it just send to the next and go ahead.
When users submits data, I want to send an automatic e-mail acknowledging their submission. Below is the code I am running now, which basically submits data into the DB.
The objective is to send automated emails to which of whom come from the results of my LINQ to SQL script. As I am not sure on 'automated' stuff I was going to approach this in the aspect of having a field in the table that the results are taken from change after the emails have been sent i.e. obj.EmailSent = true; - So that everytime the admin homepage is loaded it isnt sending it out again (eliminating duplication).
From that I would have to create a method to detect a new year and upon that reset all entries of the EmailSent field in the DB table to 'false', but for now its just the initial problem thats causing confusion.
I was going to opt for a 'foreach' solution so that all the recipients, individually, get their emails and not all together. Its the 'foreach' I'm not sure on as well as setting all the results collected to the new value of 'EmailSent' to 'true'.
how i can send emails with a return path in ASP.net 3.5 / C# 3.5. I know this was possible few years back but now due to spoofing issues this is not possible. I have been looking on internet but no use. I want the emails if bounced, should reach my bounce mail box, which could be like Bounce@mydomain.com.
I have a web application that allows a user to "join" our site. When the CreateUserWizard completes, I just have the code below in the bottom of my wizard tags; and this works!
[Code]....
I need to now add a second email that'll tell site admins that this particular user has requested access. So the user gets an email saying for registering... account is pending authorization"! At the same time I need a second email to be sent to the site admins (just one email address) stating something like "A new user <%username%> has requested to join your site". This is what I tried, but doesn't work:
[Code]....
Of course this isn't working because the CreateUserWizard automatically sends it to the CreateUserWizard.Email. I need to hardcode in the address I want the second email. So, I've tried this in my Register.aspx.vb file (I call this function from my Register.aspx file using "OnCreatedUser"):
[Code]....
Now when I build my project I'm getting this error:
"Method 'Protected Sub CreateUserWizard1_CreatedUser(sender As Object, e As System.web.UI.WebControls.WizardNavigationEventArgs)' does not have the same signature as delegate 'Delegate Sub EventHandler(sender As Object, e As System.EventArgs)'
i am developing a website that sends emails out to customers. on my pc it works fine i depoyed to the production server and find out that does not send emails outside the domain.
i have 2 boxes one is windows server 2003 that hosting te website and the other is exchange 2003
I would like to have users set some parameters, then have routines run in the middle of the night and if the user parameters are met, have an automated email sent to update the user at various time intervals as set by user , ie daily, weekly, monthly, etc.)
I try to send emails through ASP.NET interface and can't get it to work. Emails are sent, but only if the receiver of the email has the same domain name as my server (receiver@mydomain.com). The weird thing is, I actually CAN send such emails from any email program. So it seems that my Web.config file is missing something (?), although it looks ok (for me):
I need to send notification emails to specific users at different times, Can this be done in the Global.asax page using vb? Also will i have to upgrade my Database from sql express to standard?
I have emails stored in my database. The email is shown by a grid view that contains also a checkbox. I would like to send email to all emails that are selected in checkbox in my gridview. The value that the checkbox hold is True and False.