.NET Framework WPF项目切换配置后调试目标未更新问题
解决方案
针对.NET Framework WPF项目不同配置指定不同AssemblyName后,切换配置调试时VS仍沿用旧程序集名称的问题,可尝试以下快捷修复方法:
方法1:动态指定调试启动程序
直接修改项目的.csproj文件,为每个配置添加StartProgram属性,强制VS根据当前配置的AssemblyName确定调试目标:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <!-- 保留原有属性 --> <AssemblyName>WpfApp2</AssemblyName> <StartProgram>$(OutputPath)$(AssemblyName).exe</StartProgram> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <!-- 保留原有属性 --> <AssemblyName>WpfApp3</AssemblyName> <StartProgram>$(OutputPath)$(AssemblyName).exe</StartProgram> </PropertyGroup>
保存文件后重新加载项目,后续切换配置调试时会自动匹配正确的程序集文件。
方法2:清理VS缓存目录
关闭当前调试会话,找到项目根目录下的隐藏.vs文件夹(需开启系统"显示隐藏文件"选项),删除该文件夹。此操作会清除VS的用户配置缓存,重新打开项目后调试目标会自动刷新。
方法3:清理并重新生成解决方案
- 点击菜单栏的生成 -> 清理解决方案
- 切换到目标配置,点击生成 -> 生成解决方案
- 重新启动调试
内容的提问来源于stack exchange,提问作者Konoko_kun
相关产品推荐
相关产品推荐

