【发布时间】:2011-12-04 01:10:20
【问题描述】:
我的问题是我有一个发送电子邮件的控制台应用程序,并且我有一个放置在 resx 文件中的 html 电子邮件模板设置,现在我希望能够在运行时更新 html 或将文本添加到 html 文件我该怎么做???
【问题讨论】:
-
这对我没有多大帮助,必须有一个更简单的方法
我的问题是我有一个发送电子邮件的控制台应用程序,并且我有一个放置在 resx 文件中的 html 电子邮件模板设置,现在我希望能够在运行时更新 html 或将文本添加到 html 文件我该怎么做???
【问题讨论】:
由于 resx 文件被编译为 dll 或 exe,因此不容易更改其内容。您可以提供配置 gui 或使用一些 xml 配置文件,例如 app.xml。 如果您想为模板文件提供更新,例如本地化,您可以创建多个 resx 文件 File.resx 用于默认语言,File.en.resx 用于英语,File.de.resx... Visual Studio 然后创建多个 dll 文件 en\Resources.dll、de\Resources.dll。每当用户启动您的应用程序时,它都会自动搜索这些文件的安装路径,并使用最适合用户操作系统中选择的语言的安装路径。
【讨论】:
标签来使用 string.replace("old text","new text") 类似的东西?
{0}
”,然后在运行时将 {0} 替换为实际文本。请记住,您不能将此替换的结果保存回 resx 文件,因为该文件在已部署的项目中不存在。 resx 文件仅在开发人员机器上可用,并直接编译到您的 exe 文件中。如果您想在运行时更改 resx 文件中定义的内容,您应该使用另一种机制,例如将值写入配置 xml 文件或 windows 注册表。如果您将模板从直接资源字符串移动到存储为内容或嵌入式资源的项目级文件中,我认为您会更轻松。
【讨论】: