電子メールテンプレート用のRazorビューエンジンを使用している人がたくさんいます。一見、これは素晴らしいアイデアのようだ。しかし、ほとんどの人が生成している電子メールを見た後、単に文字列ベースの検索と置換を行うよりも、Razorの使用方法がどれほど優れているのか疑問に思っています。電子メールテンプレートのRazor vs. Find-and-Replace
ほとんどの電子メールのようなものの線に沿って落ちる:
string result = template.Replace("@Model.Name", Model.Name);
私はさらにいくつかのウェブ検索が、この質問に答えることができたとします。ちょうどのような何かをしない理由は、このむしろ些細なメールで
<html>
<head>
<title>Welcome to mysite.com</title>
</head>
<body>
<p>Dear @Model.Name,</p>
<p>An account has been created for you.</p>
<p>Your account is FREE and allows you to perform bla bla features.</p>
<p>To login and complete your profile, please go to:</p>
<p><a href="@Model.LogOnUrl">@Model.LogOnUrl</a></p>
<p>Your User ID is your email address and password is: @Model.Password</p>
</body>
</html>
しかし、私はまだ確かな答えを見つけていない。それは厳密にパフォーマンスの問題ですか?または、これらの簡単な電子メールがRazorビューエンジンを使用することの本当の利点を実証していないことだけですか?
私の質問は、この種のソリューションを実装する方法とは関係がありません。私はそれを行う方法を理解しています。私の質問は、あなたの電子メールがとても基本的なときにかみそりを使用するオーバーヘッドの価値があるのですか?特に、RazorEngineを使用していて、文字列入力を受け取り、テンプレートのコンパイルされたクラスを生成しない場合は特にそうです。
これは、私には設計された解決策のような感じです。
ダウン投票者に説明してください。 –
私が言及すべきであるもう2つの事があります。まず、私はMVCの外でRazorを使用しています。第二に、今私は自分の電子メールテンプレート用にRazorを実装しています。私はfind-and-replaceが今までにない最高のアイデアだと提案しようとしているわけではありません。 – mlindegarde