我在Visual Studio Express中有一个如下所示的解决方案:
C#中的LogicSchema
类,它将在运行时解析指定的XML文件。以下内容属于main
的{{1}}方法:
Program.cs
我在我的解决方案中创建了一个名为“schemas”的文件夹,用于保存XML文件并将Build Action设置为 Content ,将“Copy to Output Directory”值设置为如果更新则复制
我的期望是,如果在记事本中打开文件,进行更改并保存,当我按F5时,XML文件的更新版本将被复制到输出目录(在本例中为bin \ debug)。但是,除非我选择重建,否则更新的文件不会复制到输出目录。常规构建不起作用。
我需要更改什么才能在按F5时将文件更新后复制到输出目录?
答案 0 :(得分:2)
它似乎也适用于Visual Studio 2008 Team System - 必须是特定的表达版本,所以不能重复...
好吧,我最初的猜测不正确 - 它是关于XML文件在引用的库中。现在可以重复它。
我认为最自然的方式是将XML作为资源嵌入,然后使用GetManifestResourceStream()
读取它。这样,即使您直接引用dll而不是通过项目引用,XML文件也会在您引用它时跟随您的dll而不单独复制它。
...或者你可以使用Pre-build事件? (项目属性 - 构建事件):
copy $(ProjectDir)test.xml $(SolutiontDir)projectFolder\bin\debug\test.xml
我认为即使VS认为没有源文件发生变化,它也会一直运行。至少在完整VS2008中就是这种情况 - 刚刚测试过。