使用Windows Packaging Project打包后,安装应用丢失文件问题求助
解决Windows Packaging Project打包后appsettings.json缺失的问题
检查打包项目的文件包含设置
- 打开Windows Packaging Project,右键点击你引用的.NET Core WinForms应用程序包,选择属性
- 在文件标签页中,找到
appsettings.json文件,确认它的打包操作设为内容,且复制到输出目录设为始终复制或如果较新则复制 - 如果文件不在列表内,点击添加按钮,手动从WinForms项目的输出目录中导入该文件
确认WinForms项目的文件属性
- 回到你的.NET Core WinForms项目,右键点击
appsettings.json选择属性 - 确保生成操作是内容,复制到输出目录是始终复制
- 重新构建WinForms项目,再重新打包Windows Packaging Project
验证打包包内的文件
- 打包完成后,将生成的
.msix或.appx文件重命名为.zip并解压 - 检查解压后的目录,确认
appsettings.json存在且和主程序exe在同一目录
修正代码中的文件读取路径
如果以上步骤都正常,可能是沙箱环境导致路径读取错误,改用程序运行根目录获取路径:
var configPath = Path.Combine(AppContext.BaseDirectory, "appsettings.json"); var configuration = new ConfigurationBuilder() .AddJsonFile(configPath, optional: false, reloadOnChange: true) .Build();
内容的提问来源于stack exchange,提问作者hell.jumper
相关产品推荐
相关产品推荐

