这可能是一个错误,但我的解决方案中有2个F#项目。一个是控制台应用程序,另一个是测试应用程序(expecto测试技术上也是控制台)。解决方案中还有3个其他C#项目。
当我构建我的解决方案时,启动项目中的app.config不会复制到foo.exe.config。而是创建默认的F#配置文件并放在那里。
正在生成的文件如下所示
let mp = new Map().set('x', 1)
.set('y', 3)
.set('z', 14);
let key = mp.keys().next().value;
console.log('before delete, the first key is: ', key);
mp.delete(key);
key = mp.keys().next().value;
console.log('after delete, the first key is: ', key);
我的解决方案中的所有应用程序配置都没有像这样远程查看。我已经检查过我的app.configs已设置为内容模式。这也只是主要应用程序的一个问题;测试应用程序将app.config复制到它的bin / debug中就好了。
在我想运行程序之前,我每次都打开bin并将正确的exe.config拖放到目录中。我不知道在哪里开始寻找可能未正确配置的内容。
答案 0 :(得分:3)
为什么你认为这是一个错误?成千上万的app.config每秒都会被复制 - 你会认为它经过了相当好的测试。您的项目设置方式可能有问题。您可能希望查看项目文件(提示:它是您可以阅读的常规xml文件)。
如果您通过VS构建项目,我建议您首先提升MSBuild详细程度(工具 - >选项 - >项目和解决方案 - >构建和运行选项卡)。
完成后,清理并重建项目。当您搜索CopyAppConfigFile
时,您应该能够从“构建输出”窗口中复制app.config文件的任务中找到输出。这应该告诉你什么,如果有的话,真的被复制 - 从哪里。
以同样的方式,您可以找到构建过程中的任何其他任务是否因任何原因尝试覆盖文件 - 只要它产生正确的日志输出。