升级Microsoft.WindowsAppSDK至1.0.0报CS5001错误问题咨询
问题场景
将Microsoft.WindowsAppSDK从1.0.0-experimental1版本升级至1.0.0正式版,完成NuGet包升级操作后,CSC编译环节抛出如下报错:
CS5001 program does not contain a static 'main' method suitable for an entry point
对应开发环境:Visual Studio 2022、Windows 10 1909(OS内部版本号18363.1734)
修复方案
- 修正项目文件配置
右键目标项目选择「编辑项目文件」,检查.csproj内的配置节点:- 确认输出类型配置正确,WinUI 3桌面应用需将
<OutputType>设为WinExe,配置示例:
<OutputType>WinExe</OutputType>- 确认开启SDK自动生成入口点的相关配置,缺失则补充以下节点:
<UseWinUI>true</UseWinUI> <!-- 打包MSIX应用将值改为MSIX,未打包桌面应用保持None即可 --> <WindowsPackageType>None</WindowsPackageType> <EnableDefaultApplicationDefinition>true</EnableDefaultApplicationDefinition> - 确认输出类型配置正确,WinUI 3桌面应用需将
- 清理历史编译缓存
关闭Visual Studio,删除解决方案根目录下的隐藏.vs文件夹,以及对应项目目录下的bin、obj文件夹,重新打开VS后执行「重新生成解决方案」即可。 - 移除冗余的自定义入口点
1.0.0正式版SDK会自动生成项目入口点,若项目中保留了实验版阶段手动编写的静态Main方法,会导致入口点生成逻辑异常,直接删除手动定义的Program类及自定义Main方法即可。
内容的提问来源于stack exchange,提问作者rotem
相关产品推荐
相关产品推荐

