Avatar billede c-sharp Nybegynder
13. marts 2006 - 13:26 Der er 7 kommentarer og
1 løsning

Sende en ordrebekræftelse pr mail der også vise på skærm

Jeg er ved at lave en lille web-shop, og i den forbindelse vil jeg høre om der er en smart måde at tage noget html fra aspx filen og pakke det ned i en mail?

Før har jeg altid brugt at ligge det hele i en stringbuilder som jeg så både udskriver på skærmen og sender i en mail, men det er noget rod at styrre...

Er der en smartere måde?
Avatar billede dr_chaos Nybegynder
13. marts 2006 - 17:36 #1
du kan renderer et gridview f.eks. som html og smide output i en e-mail.
Det samme kan gøres med en tabel.
Avatar billede dr_chaos Nybegynder
13. marts 2006 - 17:40 #2
jeg har en metode:
    public static Table GenererHtmlRapport()
    {
        Table tblRapport = new Table();
        tblRapport.CssClass = "content";
        TableRow tr = new TableRow();
        TableCell tc = new TableCell();
        tc.Controls.Add(GenererRapportOplysinger());
        tr.Cells.Add(tc);
        tblRapport.Rows.Add(tr);
        tr = new TableRow();
        tc = new TableCell();
        tc.Controls.Add(GenererRepBedommelser());
        tr.Cells.Add(tc);
        tblRapport.Rows.Add(tr);
        tr = new TableRow();
        tc = new TableCell();
        tc.Controls.Add(GenererFejlbeskrivelser());
        tr.Cells.Add(tc);
        tblRapport.Rows.Add(tr);
        return tblRapport;
    }
den laver en html rapport.
Den kan vises på både en side men også sendes som en html e-mail.
Avatar billede dr_chaos Nybegynder
13. marts 2006 - 17:42 #3
jeg laver det om til en html side på denne måde:
StringBuilder sb = new StringBuilder();
        StringWriter sw = new StringWriter(sb);
        HtmlTextWriter htw = new HtmlTextWriter(sw);
   
        GenererHtmlRapport().RenderControl(htw);
for at få outputtet fra tabellen bruger jeg ovenstående funktioner.
html outputtet ligger i :
sb.ToString()
Avatar billede dr_chaos Nybegynder
13. marts 2006 - 17:43 #4
Nu gør jeg det i en class fil men det kunne lige så godt være en tabel på en side:
StringBuilder sb = new StringBuilder();
        StringWriter sw = new StringWriter(sb);
        HtmlTextWriter htw = new HtmlTextWriter(sw);
 
        dintabel.RenderControl(htw);
dinemail.Body =sb.ToString();
Avatar billede c-sharp Nybegynder
31. marts 2006 - 10:38 #5
Jeg er ikke helt med her.

Hvis jeg har følgende kode på min aspx side:

<Table>
    <tr>
        <td>Test</td>
    </tr>
</asp:Table>

Og ønsker denne kode i en mail, hvordan henter jeg så denne kode i aspx siden?
Avatar billede dr_chaos Nybegynder
31. marts 2006 - 17:31 #6
<asp:Table id="test" runat="Server">
    <tr>
        <td>Test</td>
    </tr>
</asp:Table>

i codebehind:

StringBuilder sb = new StringBuilder();
        StringWriter sw = new StringWriter(sb);
        HtmlTextWriter htw = new HtmlTextWriter(sw);

        test.RenderControl(htw);
MailMessage m = new MailMessage();
m.Body =sb.ToString();
Avatar billede c-sharp Nybegynder
10. april 2006 - 15:39 #7
Jeg takker mange gange for hjælpen, smid et svar så er der point!
Avatar billede dr_chaos Nybegynder
11. april 2006 - 08:21 #8
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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