我在 Visual Studio 2017(版本 15.7.1)中有一个奇怪的问题。在调试会话期间发生异常后,Visual Studio 无法生成。这发生在使用 net462 的 WebApi 项目中。正在使用的库之一是在 .NET 4.6.2 中构建的自定义库,它使用 Entity Framework 6、Automapper 和 LinqKit。
发生异常后,如果我尝试构建,我会收到以下构建错误,我必须重新启动 Visual Studio 才能成功构建:
1>Build FAILED.
1>
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(5033,5): warning MSB3061: Unable to delete file "C:\PATH_TO_PROJECT_FOLDER\bin\Debug\net462\WebApiApplication.exe". Access to the path 'C:\PATH_TO_PROJECT_FOLDER\bin\Debug\net462\WebApiApplication.exe' is denied.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(5033,5): warning MSB3061: Unable to delete file "C:\PATH_TO_PROJECT_FOLDER\bin\Debug\net462\AutoMapper.dll". Access to the path 'C:\PATH_TO_PROJECT_FOLDER\bin\Debug\net462\AutoMapper.dll' is denied.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(5033,5): warning MSB3061: Unable to delete file "C:\PATH_TO_PROJECT_FOLDER\bin\Debug\net462\EntityFramework.SqlServer.dll". Access to the path 'C:\PATH_TO_PROJECT_FOLDER\bin\Debug\net462\EntityFramework.SqlServer.dll' is denied.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(5033,5): warning MSB3061: Unable to delete file "C:\PATH_TO_PROJECT_FOLDER\bin\Debug\net462\EntityFramework.dll". Access to the path 'C:\PATH_TO_PROJECT_FOLDER\bin\Debug\net462\EntityFramework.dll' is denied.
我在网上搜索过,但我什至找不到任何相关的东西。我什至向微软开了一个帮助单,但他们希望我给他们一个重现问题的小项目。我无法在我们的专有代码之外重现该问题,因此我无法向他们发送任何内容。但是,我可以补充一点,如果我从混合中删除 .NET 4.6.2 项目,则不会发生这种情况。由于这对我们的生产代码不是一个现实的期望,我正在寻找解决问题的方法。
它不会发生在我团队中的每个人身上,只会发生在我的电脑上。
这是我尝试过的:
删除 bin 和 obj 文件夹 - 这在发生异常后是不可能的,因为 Visual Studio 已锁定这些文件夹中的文件。可以在重新启动后和调试会话之前删除它们
安装最新的 Visual Studio 更新 (15.7.1)
在调试期间禁用诊断工具
在构建和调试期间禁用实时单元测试
我不知所措。发生异常后,我该怎么做才能让 Visual Studio 恢复构建?有没有其他人看到过类似的行为?
拉莫斯之舞
相关分类