l'envoi de courrier en asp.net-aussi à l'aide de configuration web
je suis tryiung pour créer une page contactez-nous ,où l'utilisateur clique sur envoyer et envoie un e-mail à moi, j'ai regardé quelques exemples, mais ils semblent être dur de codage leur e-mail des informations d'identification dans le code, j'ai découvert que pour la sécurité de m vous pouvez stocker le nom d'utilisateur et mot de passe dans le webconfig de fichier, voici ma configuration web de code et mon défaut aspx.cs code, quelqu'un pourrait-il svp m'aider à résoudre le problème, c'est l'erreur que je reçois
Le nom distant n'a pas pu être résolu: "smtp.gmail.com,587' la Ligne 45: courrierclient.Send(message);
Voici mon appsettings et code:
<appSettings>
<add key="PFUserName" value="[email protected]"/>
<add key="PFPassWord" value="mypassword"/>
<add key="MailServerName" value="smtp.gmail.com,587"/>
</appSettings>
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net.Mail;
using System.Web.Configuration;
using System.Net;
namespace WebApplication2
{
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Wizard1_FinishButtonClick(object sender, WizardNavigationEventArgs e)
{
SendMail(txtEmail.Text, txtComments.Text);
}
private void SendMail(string from, string body)
{
string Username = WebConfigurationManager.AppSettings["PFUserName"].ToString();
string Password = WebConfigurationManager.AppSettings["PFPassWord"].ToString();
string MailServer = WebConfigurationManager.AppSettings["MailServerName"].ToString();
NetworkCredential cred = new NetworkCredential(Username, Password);
string mailServerName = ("smtp.gmail.com,587");
MailMessage message = new MailMessage(from, Username, "feedback", body);
SmtpClient mailClient = new SmtpClient("smtp.gmail.com,587");
mailClient.EnableSsl = true;
mailClient.Host = mailServerName;
mailClient.UseDefaultCredentials = false;
mailClient.Credentials = cred;
mailClient.Send(message);
message.Dispose();
}
}
}
- double possible de stackoverflow.com/questions/9313047/...
Vous devez vous connecter pour publier un commentaire.
Vous devez définir le paramètre SMTP à l'intérieur de la
mailSettings
de configuration web.config comme ceciLe nom de votre serveur est
smtp.gmail.com
(suppression de l'587 à partir de là). 587 est le port smtp est à l'aide. Afin de mettre cette valeur dans l'hôte de la propriété.De Code C#:
C'est ce que j'utilise actuellement dans mon Web Config avec certaines évidentes modifications
dans le fichier CS
et
pour l'envoi.
Votre nom d'hôte doit être "smtp.gmail.com" et puis définissez
mailClient.Port
587.pourquoi vous n'avez pas les compiler dans une classe pour faire une dll?
Bien, j'utilise ce code, profitez d' 🙂
ci-dessus est
web.config
et ici est de retour-le code de fin :système va automatiquement obtenir les détails de smtp de
web.config