Avatar billede per2edb Praktikant
22. april 2012 - 23:29 Der er 11 kommentarer og
1 løsning

Linieskift i mail program

Jeg har en aspx side der sender mail med en tekst i format HTML
Jeg har nogle variable såsom navn og firma jeg vil have sendt koblet til body men adskilt med linieskift.
"<br>" virker ikke. "<br>" indgår bare i strengen.
Hvordan får jeg linieskift


  Sub btnSubmit_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim sKontaktNavn As String
        Dim sTo As String, sFrom As String, sSubject As String, sBody As String

             
        Dim MyMail As MailMessage = New MailMessage()
           
        MyMail.From = sFrom
        MyMail.To = sTo
        MyMail.Subject = sSubject
   
        MyMail.Body = sBody & "<br>" & " Navn: " + sKontaktNavn
Avatar billede arne_v Ekspert
22. april 2012 - 23:32 #1
HTML: brug "<br>"
Text: brug vbCrLf

<br> skal virke i HTML!
Avatar billede per2edb Praktikant
23. april 2012 - 00:11 #2
Det virker ikke. I en normal tekststreng virker det selvfølgelig, men dette er en del af inputtet til Body der sender html tekst til en mail (Se ovenfor som beskrebet)
Avatar billede jokkejensen Novice
23. april 2012 - 00:33 #3
http://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.isbodyhtml.aspx

Du skal nok sætte ishtml til true, hvis den default er false.

/J
Avatar billede jokkejensen Novice
23. april 2012 - 00:34 #4
Men jeg plejer dog at bruge System.Environment.Newline.. så kan man lidt se hvad der sker :)
Avatar billede arne_v Ekspert
23. april 2012 - 03:47 #5
Med IsBodyHtml som True virker koden fint.

Og jeg vil formode at den er sat da der i spoergsmaalet haevdes at der sendes i HTML.
Avatar billede per2edb Praktikant
23. april 2012 - 08:48 #6
Det er lavet lige efter dette kocept:
<!-- http://msdn.microsoft.com/en-us/library/system.web.mail.mailmessage.aspx 

Er det  txtBodyFormat.Text = "HTML" der skal ændres?

<script type="text/javascript" language="VB" runat="server">

    Sub Page_Load()

        If Not IsPostBack Then
            lblMsg1.Text = ""
            txtTo.Text = "XXX@XXX.as"
            txtFrom.Text = ""
            txtCc.Text = ""
            txtBcc.Text = ""
            txtSubject.Text = ""
            txtBody.Text = ""
            txtAttach.Text =  ""
            txtBodyEncoding.Text = "Encoding.UTF8"
            txtBodyFormat.Text = "HTML"
            txtPriority.Text = "Normal"
            txtUrlContentBase.Text = ""
            txtUrlContentLocation.Text = ""
            ' Name of relay mail server in your domain. '
            txtMailServer.Text = "smtp.unoeuro.com"
        End If
    End Sub
Avatar billede jokkejensen Novice
23. april 2012 - 12:21 #7
@Arne >> jeg gætter bare, men de fleste mail readers (selv notes) forstår sku et <br> :)

@Per >> vi vil nok hellere se hele metoden der sender den mail. Men umiddelbart med det kode du viser, så ser det liiiiiidt forskruet ud, med mindre det bare er til test, hvordan du ex vil få Encoding.UTF8 til at slå igennem via en textbox?
/J
Avatar billede per2edb Praktikant
23. april 2012 - 13:17 #8
Sub Page_Load()
        If Not IsPostBack Then
            txtKontaktNavn.Text = ""
            txtFirma.Text = ""
            txtAdresse.Text = ""
            txtTlf.Text = ""
            lblMsg1.Text = ""
            txtTo.Text = "xx@yy.dk"
            txtFrom.Text = ""
            txtCc.Text = ""
            txtBcc.Text = ""
            txtSubject.Text = ""
            txtBody.Text = ""
            txtAttach.Text =  ""
            txtBodyEncoding.Text = "Encoding.UTF8"
            txtBodyFormat.Text = "HTML"
            txtPriority.Text = "Normal"
            txtUrlContentBase.Text = ""
            txtUrlContentLocation.Text = ""
            ' Name of relay mail server in your domain. '
            txtMailServer.Text = "smtp.unoeuro.com"

        End If
    End Sub

    Sub btnSubmit_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim sKontaktNavn As String, sFirma As String, sAdresse As String, sTlf As String
        Dim sTo As String, sFrom As String, sSubject As String, sBody As String
        Dim sAttach As String, sCc As String, sBcc As String, sBodyEncoding As String
        Dim sBodyFormat As String, sMailServer As String, sPriority As String
        Dim sUrlContentBase As String, sUrlContentLocation As String
        Dim iLoop1 As Integer

        sKontaktNavn = Trim(txtKontaktNavn.Text)
        sFirma = Trim(txtFirma.Text)
        sAdresse= Trim(txtAdresse.Text)
        sTlf= Trim(txtTlf.Text)
        sTo = Trim("XXX@XXX.as")
        sFrom = Trim(txtFrom.Text)
        sSubject = Trim(txtSubject.Text)
        sBody = Trim(txtBody.Text)
        sAttach = (txtAttach.Text)
        sCc = Trim(txtCc.Text)
        sBcc = Trim(txtBcc.Text)
        sBodyFormat = Trim(txtBodyFormat.Text)
        sBodyEncoding = Trim(txtBodyEncoding.Text)   
        sPriority = Trim(txtPriority.Text)
        sUrlContentBase = Trim(txtUrlContentBase.Text)
        sUrlContentLocation = Trim(txtUrlContentLocation.Text) 
        sMailServer = Trim("smtp.unoeuro.com")
               
       
        Dim MyMail As MailMessage = New MailMessage()
           
        MyMail.From = sFrom
        MyMail.To = sTo
        MyMail.Subject = sSubject
   
        MyMail.Body = sBody + "<br>" + " Navn: " + sKontaktNavn + "<br>" + " Firma: " + sFirma + "<br>" + " Adresse: " + sAdresse + "<br>" + " E-mail: " + sFrom + "<br>" + " Tlf: " + sTlf

        MyMail.Cc = sCc
        MyMail.Bcc = sBcc
        MyMail.UrlContentBase = sUrlContentBase
        MyMail.UrlContentLocation = sUrlContentLocation

        'Select Case txtBodyEncoding.Text
            'Case Encoding.UTF7.EncodingName : MyMail.BodyEncoding = Encoding.UTF7
            'Case Encoding.UTF8.EncodingName : MyMail.BodyEncoding = Encoding.UTF8
            'Case Else : MyMail.BodyEncoding = Encoding.ASCII
        'End Select
        MyMail.BodyEncoding = Encoding.UTF8

        Select Case UCase(sBodyFormat)
            Case "HTML" : MyMail.BodyFormat = MailFormat.Html
            Case Else : MyMail.BodyFormat = MailFormat.Text
        End Select

        Select Case UCase(sPriority)
            Case "HIGH" : MyMail.Priority = MailPriority.High
            Case "LOW" : MyMail.Priority = MailPriority.Low
            Case Else : MyMail.Priority = MailPriority.Normal
        End Select

'sAttach="C:\Users\Jorgen\Documents\box.doc"


        ' Build an IList of mail attachments.
        If sAttach <> "" Then
            Dim delim As Char = ","
            Dim sSubstr As String
            For Each sSubstr In sAttach.Split(delim)
                Dim myAttachment As MailAttachment = New MailAttachment(sSubstr)
                MyMail.Attachments.Add(myAttachment)
            Next
        End If

        SmtpMail.SmtpServer = sMailServer
        SmtpMail.Send(MyMail)
   
        lblMsg1.Text = "Mailen er sendt "
    End Sub

    Sub btnClear_Click(ByVal sender As Object, ByVal e As EventArgs)
        txtKontaktNavn.Text=""
        txtFirma.Text=""
        txtAdresse.Text=""
        txtTlf.Text=""       
        lblMsg1.Text=""
        txtTo.Text="xx@yy.dk"
        txtFrom.Text=""
        txtSubject.Text=""
        txtBody.Text=""
        txtAttach.Text=""
        txtBcc.Text=""
        txtCc.Text=""
        txtBodyEncoding.Text="Encoding.UTF8"
        txtBodyFormat.Text="HTML"
        txtPriority.Text="Normal"
        txtUrlContentBase.Text=""
        txtUrlContentLocation.Text=""
        txtMailServer.Text=""
        btnSubmit.Text="Submit"
      End Sub
     
</script>
Avatar billede per2edb Praktikant
23. april 2012 - 18:22 #9
Det var:  & vbCrLf &
Så virker det
Avatar billede jokkejensen Novice
24. april 2012 - 13:19 #10
yep, men så er det jo ikke html som du skriver ?

Select Case UCase(sBodyFormat)
            Case "HTML" : MyMail.BodyFormat = MailFormat.Html
            Case Else : MyMail.BodyFormat = MailFormat.Text
        End Select


Vil vel altid ramme Else, når den er sat til Text.

Prøv <h1>overskrift</h1>

/J
Avatar billede per2edb Praktikant
24. april 2012 - 13:35 #11
Vil i begge arrangere så jeg kan give point

Som i kan se på et nyt spørgsmål så har jeg også store problemer med at uplode filer der skal sendes med mailen. her er 200 point at hente
Avatar billede arne_v Ekspert
25. april 2012 - 00:35 #12
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester