2010-08-18 4 views
0

Dans mon application Web, lorsque l'utilisateur envoie des commentaires sur le site, le message est envoyé à mon courrier électronique (par exemple, [email protected]). Ya ça fonctionne bien jusqu'à maintenant, mais quand je clique sur le transmettre à n'importe qui (option de transfert sur [email protected]), il est affiché avec <html><body> tags. Comment puis-je resoudre ceci.envoyer un mail dans asp.net?

private void sendingmail() 
{ 
    string filename = FileUpload1.FileName.Trim(); 
    string a = "http://www.begoniainfosys.com/Re/" + filename; 
    //string emailid = emailid.ToString(); 
    MailMessage m = new MailMessage(); 
    m.Subject = "Uploaded Resume"; 

    if (txtdesc.Text.ToString() == "") 
    { 
     m.Attachments.Add(new System.Net.Mail.Attachment(@Server.MapPath("~/Resumes/" + FileUpload1.FileName))); 
     m.Body = "<html><body><b>" + "The Name Of The JobSeeker:" + txtname.Text + "<br><br>" + "The MailID:" + txtemailid.Text + "<br><br>" + "The MobileNumber:" + txtmobile.Text + "<br><br>" + "The Postion Applied For:" + txtpositionapplied.Text + "</b> </body></html>"; 
     m.IsBodyHtml = true; 
    } 
    else 
    { 
     m.Attachments.Add(new System.Net.Mail.Attachment(@Server.MapPath("~/Resumes/" + FileUpload1.FileName))); 

     m.Body = "<html><body><b>" + "The Name Of JobSeeker:" + txtname.Text + "<br><br>" + "The MailID:" + txtemailid.Text + "<br><br>" + "The MobileNumber:" + txtmobile.Text + "<br><br>" + "The Postion Applied For:" + txtpositionapplied.Text +"<br><br>"+"The Description:"+txtdesc.Text.ToString()+" </b> </body></html>"; 
     m.IsBodyHtml = true; 
    } 

    string frm = txtemailid.Text; 
    m.From = new MailAddress(frm); 
    m.CC.Add(new MailAddress("[email protected]")); 
    m.To.Add(new MailAddress("[email protected]")); 
    m.Priority = MailPriority.High; 
    SmtpClient sm = new SmtpClient(); 
    sm.DeliveryMethod = SmtpDeliveryMethod.Network; 
    sm.Send(m); 
} 

Répondre

0

Je suggère que votre client de messagerie n'est pas l'édition en HTML, donc quand vous le transmettre, il convertit probablement texte riche et peut-être ne connaît pas les balises html?

De quel client disposez-vous? Effectuez une recherche rapide sur Google pour savoir comment utiliser le code HTML pour les courriels.

Dans les versions antérieures d'Outlook, il s'agissait de Outils -> Options -> Format du courrier.

1

La façon dont vous le faites maintenant. Vous fournissez uniquement une version HTML du corps de l'e-mail. Si cela est envoyé à un client de messagerie qui ne prend pas en charge html, les balises seront affichées. Au lieu de cela, vous devriez envoyer du texte brut avec une vue alternative qui contient le code HTML. De cette façon, l'application cliente peut décider quelle version utiliser.

var message = new System.Net.Mail.MailMessage(fromAddress, toAddress); 
message.Body = "plain text"; 
var htmlView = System.Net.Mail.AlternateView.CreateAlternateViewFromString(htmlBody, 
         new System.Net.Mime.ContentType("text/html")); 
message.AlternateViews.Add(htmlView);