0


サードパーティのソフトウェアを使用せずに独自の電子メール テンプレートを作成したいのですが、自分用にいくつかの基本事項を明確にしたいと思います :)
まず、すべての電子メール テンプレートはインライン CSS を使用した HTML 本文になるのでしょうか? したがって、C# でテンプレート化された電子メールを送信すると、次のようになります。

SmtpClient smtpClient = new SmtpClient("smtphost");
MailMessage msg = new MailMessage();
msg.To.Add("toaddress6@place.com");
msg.Subject = "A TEMPLATE";
msg.Body = "<body> This is where the html goes O.o </body>";
msg.From = new MailAddress("fromaddress@anotherplace.com");
msg.IsBodyHtml = true;
smtpClient.Send(msg);

次に、添付ファイルとして追加されているか、長いアドレスを介してサーバー上の画像の場所にリンクされていると想定しているテンプレートを使用して画像を送信します。html に表示されます。

4

2 に答える 2

1

試したことはありませんが、MailDefinitionクラスを見てみましょう。

于 2012-05-07T05:32:37.263 に答える
0

電子メール テンプレート システムを作成しているときに、私が遭遇したいくつかの解決策を次に示します。

  • 私が知っているフレームワークに組み込まれた組み込みのテンプレート システムはありません。私は過去にかなりうまく機能するシステムを構築しました。最近はシンプルにやっています。{year} のような項目を現在の年に、{year2} を 2 桁の年に、または {year:2,} に置き換えますSubString()。最初のビルドを過ぎた多くの作業。({var:name:upper}, :lower, :titlecase を実行できます。オブジェクトを渡し、単純なリフレクション手法を使用してすべてのパブリック プロパティを読み取り、自動置換を行うことができます... 空は限界です!)重要なことは、YAGNI の原則にあまり違反せずに、自分自身に多くの余裕を持たせることです。このようなシステムを構築しているとき...

  • どのようになりたいかの例から始めます。<html><body><h1><font face="arial">Hello, <b>{var:firstname}!</b> It's {hour} {ampm} here...</font></h1> ...</html>私は、置換を行い、最終的なコピーを吐き出すようなものを書くことになりました。次に、正規表現を使用して、すべてが置き換えられていることを確認して、送信していないことを確認しHi, null null! It's nice to see you at {hour} {ampm}!、受信者の笑い株にします。コンテンツをどのように挿入できるようにするかをよく考えてください。独自のテンプレート システムを使用して、良いことも悪いこともたくさんできるので、TEST TEST TEST. 単体テストは回帰テストに便利です。Web サイトの場合のようにクライアントが確認する前に変更する方法がないため、ライブに移行したら間違いを犯したくないことを忘れないでください。

  • ほとんどの HTML ニュースレターは HTML 形式で、レイアウトにはインライン CSS または(あえぎ!) TABLEFONTタグを使用します。この背後にある理由は、ほとんどの電子メール HTML レンダリング エンジンが過去に動かなくなったためです。Thunderbird で動作するものは、Mozilla である程度動作する可能性がありますが、GMail や Hotmail ではゴミのように見えます。インライン CSS の使用をできるだけ少なくすることをお勧めします。使用する場合は、Web ベースおよび非 Web ベースのクライアントを含むいくつかの電子メール クライアントでテストして、それぞれで目的の効果が得られることを確認してください。レイアウトには s を使用TABLEし、手の込んだ CSS3 は使用しません。KISS ルールがここに適用されます。はい、古いスタイルの HTML を使用した過去からの爆風です。ひどいコードを書いたり、レイアウトにテーブルを使用したりした後、シャワーを浴びる必要があると感じるかもしれませんが、それは私たちが与えられたもので行う必要があることです.

こちらもお読みください: http://www.hongkiat.com/blog/design-perfect-newsletter/

于 2012-05-07T05:08:36.653 に答える