我有一个包含多个项目的 .Net 解决方案。其中一个项目包含依赖于 WPF 项目的所有业务逻辑。
业务逻辑项目使用一堆资源文件来实现不同的功能。
以前这两个项目只有一个,所以我所做的就是将所有这些资源文件设置为“复制到输出目录”为true。正在运行的应用程序按如下方式组成文件路径。
static readonly string ResourceFilePath =
Path.Combine(
Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location),
"resources\\thefile.ext");
我知道我可以使用资源并且效果很好(除了扩展名的消失和用 替换.
字符_
)。
但是,有时我的目录树会保存一堆文件。正在运行的应用程序将整个内容复制到某个临时位置。
与单个资源文件一样,我将所有文件设置为复制到 Visual Studio 中的输出目录。正在运行的应用程序将组成目录的路径,然后使用该路径递归地将所有内容复制到临时位置。
static readonly string ResourceFilesPath =
Path.Combine(
Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location),
"resources\\somedirectory\\");
public void CopyAll(DirectoryInfo source, DirectoryInfo target)
{
...
在 Visual Studio 中调试时,这一切都运行良好,并且安装了应用程序。而且因为文件在磁盘上,所以它们是单独版本控制的。
我的问题是我复制目录和文件结构的第二种情况。我不能用资源来做,现在业务逻辑在一个单独的项目中,资源文件没有复制到前端项目的输出目录中。
我的问题是:是否有更好的方法来处理某些目录树中的许多资源?