使用 C# 将文件添加到项目资源

Rya*_*Cox 3 .net c# embedded-resource

我正在为使用 xml 设置文件(例如 C:\ssis\mySettingsFile.xml)运行的应用程序创建 SpecFlow 测试。在一项测试中,我想将该文件保存到磁盘,然后将该文件添加到我的项目资源中并清理磁盘位置。然后,另一个测试会将资源解压到临时目录并从那里使用它。

我很清楚解包部分,但是有没有办法以编程方式将文件打包到项目资源中,而不是使用 VS GUI 手动将其添加到项目中并将其标记为嵌入式资源?

我知道这是错误的,但我正在思考以下内容:

string myPath = "C:\ssis\mySettingsFile.xml";
TestHelper.ResourceDirectory = "$\...\...\Project.Folder.Resources";
myResource = TestHelper.PackResource(myPath);
myResource.IsEmbeddedResource = true;
Run Code Online (Sandbox Code Playgroud)

...其中 PackResource 方法将文件保存到项目资源中。

提前致谢!

小智 5

您可以创建一个资源文件夹并将您的 xml 添加到其中。当您单击项目的“属性”时,将出现一个“资源”选项卡,您可以在其中查看您的文件。要访问该文件,您可以使用 ProjectNamespace.Properties.Resources.yourfilename。