*   >> Lezen Onderwijs artikelen >> science >> programming

ASP.NET - C # - Met behulp van UserControls als Mail Templates

Een volledig CODE GEFORMATTEERD EXEMPLAAR VAN DIT ARTIKEL is beschikbaar op de CODEGOLEM BLOG

UPDATE: U kunt ook lezen dit artikel over het coderen van een REUSABLE HELPER MAILER CLASSable naar template e-mails met ingesloten afbeeldingen

Houd in gedachten dat je kunt elke user control gebruiken, met een soort van kind controles in it.For voorbeeld dit een orderbevestiging mail zou kunnen zijn, met een GriView gebonden aan een DataTable .

of misschien een gebruiker de registratie e-mail, met behulp van een FormView als een samenvatting van het profiel van de gebruiker gegevens.

Ik zal een eenvoudige user control te gebruiken met een label, om te laten zien hoe het hele ding werkt.

< p> [code: html]

Hallo

Dit is een UserControl gebaseerde mail template [/code]

Dit is een UserControl als die we normaal gebruiken in onze. webprojecten.

Ik ben hier met een label als een tijdelijke aanduiding voor de bestemming name.

We zo veel van dergelijke labels kon gebruiken als dat nodig is in onze template, of zelfs afbeeldingen, zolang hun ImageURL is ingesteld op absolute URL's .

Tweede stap: verklaar een interface voor onze template

[code: c #]. openbare interface IMailTemplate {snaar DestinationName {krijgen; vast te stellen; }} [/code]

We zullen het veld van onze template toegang via deze interface

Laten we wijzigen codebehind onze UserControl's om het uit te voeren de IMailTemplate-interface

[code..: c #] public gedeeltelijke class TemplateMailer_MailTemplate: System.Web.UI.

UserControl, IMailTemplate {public string DestinationName {krijgen {return DestinationNameLabel.Text; } Set {DestinationNameLabel.Text = waarde; }}} [/Code]

Onze DestinationName woning krijgt en stelt de waarde van de Label we gebruikt als plaatsaanduiding.

Tot slot, om deze kleine magische voltooien, is hier de code te creëren a. MailMessage met HTML-code gegenereerd door onze template UserControl

Stel dat we een ASPX-pagina met een knop te genereren en verzenden van de e-mail.

This een eenvoudige uitvoering van zijn OnClick event handler zou kunnen zijn:

[code: c #] beschermde nietige SubmitButton_Click (object afzender, EventArgs e) {Controle mailTemplate = LoadControl ("MailTemplate.ascx"); ((IMailTemplate) mailTemplate) .DestinationName = "Destination Name"; StringBuilder StringBuilder = new StringBuilder (); StringWriter StringWriter = new StringWriter (StringBuilder); HtmlTextWriter HtmlTextWriter = new HtmlTextW

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 Lezen Onderwijs artikelen,https://onderwijs.nmjjxx.com All rights reserved.