app、config未被覆盖,或者根据构建配置使用自定义app.config文件未拾取更改



我目前正在创建一个解决方案,必须与localdb和sqlservercompact 4.0一起工作,首先使用EntityFramework代码。因此,我创建了额外的构建配置:LocalDb和SQLCE。显然,我需要不同的app.config文件为这些构建配置。我发现了这个很好的解决方案,并使用了它的第二个选项:通过使用AfterBuild指令来改变MSBuild行为。因此,我在wpf应用程序的项目文件中包含了下面的XML:

<Target Name="AfterBuild">
    <Delete Files="$(TargetDir)$(TargetFileName).config" />
    <Copy SourceFiles="$(ProjectDir)ConfigApp.$(Configuration).config" DestinationFiles="$(TargetDir)$(TargetFileName).config" />
  </Target>

这在我家里的Win8开发笔记本电脑上运行得很好,但似乎在我工作的Win7桌面上忽略了这个指令。我注意到,我的class.dll已经注释掉模板以添加PreBuild和AfterBuild指令,wpf应用程序没有它。我检查了Build屏幕,看看指令是否被执行,它是。似乎这个变化没有被再次发现或覆盖。发生了什么?

没关系:上面的解决方案适用于类库,例如用于单元测试项目。对于桌面应用程序,你需要Slow Cheetah。

最新更新