代码之家  ›  专栏  ›  技术社区  ›  Chris McCall

对于批处理运行结束时发出的电子邮件,我应该在哪里存储电子邮件模板?

  •  4
  • Chris McCall  · 技术社区  · 15 年前

    所以我写这个exe来处理退款,当工作完成后,我们会发送一封电子邮件给一个用户列表,可能会是:

    不答复

    退款处理已完成。已成功处理n笔退款。我们遇到n个错误。请检查 http://whatever.url 详细报告。

    谢谢,

    一台计算机

    不答复

    所以,我们不是说要在这里磨掉成百上千封邮件,每天只有一封,相关的信息就会源源不断地传进来。这封邮件不太可能被修改过,也不可能被非技术人员修改过。我应该如何存储这个并将模板处理到电子邮件中?C字符串。格式样式有0和1等?XML/XSLT(似乎很麻烦)?我是将模板存储在app.config中,还是将其放在数据库中,或者完全不同?

    在stackoverflow之前我做过什么?:)

    2 回复  |  直到 15 年前
        1
  •  16
  •   Yvo    15 年前

    我会采取简单的方法。我假设您想在这里发送HTML邮件。

    我建议您创建一个HTML文件,说明您希望邮件的外观。将所有名称/变量替换为CompanyName。保存文件并右键单击Visual Studio中的项目。转到属性,然后转到资源。现在将HTML文件拖到资源中,并给它一个合适的名称(这里是mymailtemplate)。

    现在,您可以从代码的properties.resources.mymailtemplate中引用它。您可以将其用作字符串。将参数文本替换为实际值。

    完成并易于编辑!

        2
  •  0
  •   Steve Temple    15 年前

    我通常将模板存储在带有自定义占位符标记的文本文件中,尽管您可以使用占位符的c string.format样式。我在app.config中引用了文件名,然后可以将文本模板加载到中,替换标记并发送电子邮件。

    这使得一切都非常简单,并且可以在不重新编译的情况下更新电子邮件文本。