Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 访问/包括模板文件的方法_C#_File - Fatal编程技术网

C# 访问/包括模板文件的方法

C# 访问/包括模板文件的方法,c#,file,C#,File,我目前正在设计一个邮件应用程序,它使用为特定邮件类型加载的html模板,然后替换文件中的占位符。我目前正在尝试找出访问这些文件的方法,或者最好将它们放在哪里 目前在解决方案/项目结构中,我有以下布局: MyProject |----> Auxiliary |----> MailTemplates |-----> MyMailTemplate.html 当然,当我使用File.Exists

我目前正在设计一个邮件应用程序,它使用为特定邮件类型加载的html模板,然后替换文件中的占位符。我目前正在尝试找出访问这些文件的方法,或者最好将它们放在哪里

目前在解决方案/项目结构中,我有以下布局:

MyProject
   |----> Auxiliary
               |----> MailTemplates
                           |-----> MyMailTemplate.html
当然,当我使用File.ExistsAuxiliary\MailTemplates\MyMailTemplate.html时失败了,因为调试或发布文件夹是执行时的当前文件夹,而不是项目本身的基本文件夹

计划是读取模板文件的全部文本,并将其放入字符串变量中,替换占位符,然后将结果用于邮件正文

String templateContent = File.ReadAllText(mailTemplatePath);

因此,我的问题主要是如何在不依赖文件/应用程序处于特定固定且不改变路径的情况下包含/访问模板文件

您可以映射一个存储库文件夹,在其中使用设置键存储模板,然后与文件路径连接。您可以使用appsettings键或其他键指向模板目录template_ROOT,也可以使用if DEBUG或其他方法,并让它根据编译常量选择适当的路径。还有其他方法。总的来说,这些方法要求文件位于固定目录中,还是我弄错了?