【发布时间】:2012-10-29 19:50:20
【问题描述】:
我正在我的网站服务范围内向用户发送一封电子邮件。
我想对其进行格式化,以便它以一种特定的方式显示得很好。
这是我所拥有的:
<table bgcolor="#FFE680" border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody>
<tr>
<td width="100%" height="51" valign="middle"><h1> <strong>[COMPANY] User ID Reminder </strong></h1></td>
<td align="right" valign="top" width="8"><img alt="" width="8" height="8" align="top" /></td>
</tr>
</tbody>
</table>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody>
<tr>
<td><table border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody>
<tr>
<td align="left" valign="top" width="100%"><table border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody>
<tr>
<td><table border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody>
<tr>
<td colspan="1" align="left"></td>
</tr>
<tr>
<td align="left" valign="top" width="100%"><p> <br />
Dear [USERNAME], </p>
<p> In response to your request to be reminded of your User ID, please find below the information we have on file for you. If you didn't submit this request, ignore this email. </p>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td>Your User ID is: </td>
<td>[USERNAME]</td>
</tr>
<tr>
<td>Your registered email address is: </td>
<td>[EMAIL]</td>
</tr>
</tbody>
</table>
<p>
If you have forgotten your password, you can request it here.<br />
</p>
<p>
Thank you,<br />[COMPANY]
</p></td>
</tr>
</tbody>
</table></td>
</tr>
</tbody>
</table></td>
</tr>
</tbody>
</table></td>
</tr>
</tbody>
</table>
现在我的问题不在于电子邮件的外观,而是如何在填充相应字段的同时将其作为电子邮件正文?
我把它作为一个字符串放在资源中,我想我只是替换特定的[字段]。这开始变得乏味并且显得草率:
var body = SuburbanHUB.Properties.Resources.ForgotPasswordEmailBody.Replace("[USERNAME]", username).Replace("[EMAIL]")...
我确信有更好的方法可以做到这一点,但我没有经验。
=== 澄清 ===
我正在使用 razor 调用用 C# 编写的 WCF 服务。被调用的服务是发送电子邮件的地方,而不是视图。我将 Razor 与 MVC 一起使用,并以 C# 作为底层代码。
【问题讨论】:
-
您不会说您是从网站、WinForms 程序、WPF 程序还是其他方式发送此信息。它可以对您可以获得哪些答案产生重大影响。
-
什么是“C# 服务”?网络服务? WCF 服务?
-
我们正在使用 WCF 服务。天哪,学会读我的心!! :P
-
作为评论,我使用了完全相同的方法,但我只是使用 {i} 和 string.format 函数而不是 [USERNAME]。
标签: c# asp.net-mvc razor