.NET6迁移后OpenXMLPowerTools加载IdPartPair类型失败求助
解决.NET6下OpenXMLPowerTools加载IdPartPair类型失败的问题
问题原因
旧版OpenXMLPowerTools(4.5.3.0)是针对.NET Framework开发的,与.NET6所属的.NET Core/.NET 5+体系不兼容,且该版本依赖的DocumentFormat.OpenXml SDK版本过低,IdPartPair类型在新版本SDK中已被调整或移除,导致跨平台迁移后出现类型加载异常。
解决办法
升级OpenXMLPowerTools至兼容.NET6的版本
卸载旧版OpenXMLPowerTool包,安装支持.NET Standard/.NET6的最新稳定版。在Package Manager Console中执行:Uninstall-Package OpenXMLPowerTool Install-Package OpenXMLPowerTools注意:优先选择官方维护的主包,避免使用已停止更新的第三方分支包(如
OpenXMLPowerTools.Core)。同步DocumentFormat.OpenXml SDK版本
确保DocumentFormat.OpenXml的版本与OpenXMLPowerTools兼容,新版本OpenXMLPowerTools通常要求SDK版本在2.15.0及以上。可通过NuGet更新该包:Update-Package DocumentFormat.OpenXml适配代码中的HTMLConverter逻辑
升级后部分API可能有变动,需调整图片处理相关代码以适配新API。示例调整后的代码片段:var settings = new HtmlConverterSettings() { ImageHandler = imageInfo => { // 自定义图片处理逻辑,规避旧版IdPartPair相关依赖 return ImageProcessingResult.FromStream(imageInfo.ImageStream); } }; var html = HtmlConverter.ConvertToHtml(wordDocument, settings);清理项目依赖残留
检查项目文件(.csproj),移除旧版程序集的硬编码引用,确保所有依赖均通过NuGet管理,避免版本冲突。
内容的提问来源于stack exchange,提问作者gits
相关产品推荐
相关产品推荐

