Frage

Wir suchen eine schnelle, flexible Art und Weise von Templat Generierung von Inhalten (in diesem Fall personalisierte E-Mails im Text- und HTML-Format) von einer .NET-Konsolenanwendung.

Wir haben keine VirtualPathProvider und keine gültige HttpContext.Current, die von unseren ersten Versuchen, Mittel es sehr sein wird, sehr hart die WebForms-Ansicht-Engine zu verwenden, und alle anderen .NET-Web-Ansicht Motoren (Spark, auf Messers Schneide) werden umfangreiche Sanitär müssen, um sie denken, dass sie in einer Web-Anwendung ausführen.

Ich mag wie etwas tun:

var customerTemplateData = GetTemplateDate(customer);
var htmlBody = templateEngine.Render("template.html", customerTemplateData);
var textBody = templateEngine.Render("template.txt", customerTemplateDate);
SendMail("me@mydomain.com", customer.Email, "Hey there!", htmlBody, textBody);

und ich möchte es mit komplexen verschachtelten Daten zu tun, viele Listen innerhalb von Listen, bis zu 1.000 Mal pro Minute.

Alle Empfehlungen für spezielle Template-Engines oder nach Möglichkeiten, die Web-Ansicht Motoren in einem eigenständigen Kontext ausgeführt sein geschätzt:)

Danke,

Dylan

War es hilfreich?

Lösung

Wenn Sie sich für einige Hinweise auf der Suche, wie Sie dies mit Funken erreichen würde, gibt es eine voll funktionsfähige E-Mail und Text hier Beispielavailable in dem Spark-Quellcode Templating.

Es ist zu beachten, dass es eigentlich keine Abhängigkeit, dass diese Probe hat auf Httpcontext oder jede andere Web-Infrastruktur für diese Angelegenheit. Es ist völlig unabhängig und könnte genauso gut als Konsolenanwendung ausgeführt werden.

Hope, das hilft,
All the best,
Rob

Andere Tipps

Es gibt durchaus ein paar Möglichkeiten von Templat Inhalt von der Befehlszeile erstellen, ist NVelocity ein Beispiel, aber auch vor kurzem sind wir unsere Wrapper der Razor-Parser auf CodePlex veröffentlicht ( http://razorengine.codeplex.com/ ), die ich denke, lohnt sich ein Blick in.

Noch eine andere, String Template Engine .

Ich bin jedoch die Aufmerksamkeit auf RezorTemplateEngine!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top