HTMLメールテンプレートを生成するためにxsltでスタイル設定されたxmlファイルがあります。ユーザーから動的に値を取得し、xml 要素のテキストを受け取った値に置き換えます。そのxmlファイルを取得して、c#でHTMLメール本文として送信するにはどうすればよいですか?
私のXmlはこのように見えます
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="EmailTemplateStyleForHTML.xslt"?>
<EmailTemplate>
<subject>Information from xyz</subject>
<displayName>abcd</displayName>
<Message1>
Thanks you for registering to xyz.
</Message1>
<Copyright>Copyright xyz</Copyright>
</EmailTemplate>
LINQ を使用して値を xml に設定しています。注: xml から値を取得および設定する方法は知っていますが、xml ファイル全体をメール本文に取り込みたいと考えています。
これに対するより良いアプローチがあると思われる場合は、ぜひお聞かせください。よろしくお願いします。
返信後に編集:xsl変換部分:
TextReader tr1 = new StringReader(@"EMailTemplateHtml.xml");
var tr11 = new XmlTextReader(tr1);
var xPathDocument = new XPathDocument(tr11);
//read XSLT
TextReader tr2 = new StringReader(@"EmailTemplateStyleForHTML.xslt");
var tr22 = new XmlTextReader(tr2);
var xslt = new XslTransform();
xslt.Load(tr22);
var sb = new StringBuilder();
TextWriter tw = new StringWriter(sb);
xslt.Transform(xPathDocument, null, tw);
emailBody = sb.ToString();
あなたが言ったように私は変換を行っています(@Roy Ashbrook)ここに何か欠けていますか?