重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
使用Spire组件抛出异常The type initializer for 'spr857' threw an exception
创新互联公司专注于银川网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供银川营销型网站建设,银川网站制作、银川网页设计、银川网站官网定制、小程序开发服务,打造银川网络公司原创品牌,更为您提供银川网站排名全网营销落地服务。
我使用免费的Spire.Xls组件尝试去转换Excel文档到PDF文档,在执行下面第二行代码,也就是做加载文档这步时,抛出了异常“The type initializer for 'spr857' threw an exception”
Workbook workbook = new Workbook();
workbook.LoadFromFile("D:\\sample.xlsx");
workbook.SaveToFile("D:\\sample.pdf", Spire.Xls.FileFormat.PDF);
这个问题困扰了我老半天,在网上也没搜到它的解决方案,后来访问了E-iceblue公司的论坛,才找到了它的解决方案,E-iceblue 公司的技术人员回复的说是:please make sure Spire.pdf.dll file is placed in the same location as Spire.xls.dll.
根据这个意思我尝试了两种方案,都能解决这个问题,在这里分享一下:
方案1,将Spire.Xls包里的Spire.pdf.dll文件拷贝到Spire.Xls.dll相同的目录下。
方案2,将Spire.XLS.dll和Spire.Pdf.dll同时作为Reference导入到项目里。
转换出来的结果真是完美极了:
原始的Excel:
转换出来的PDF:
在使用Spire.Xls的同时,我也在尝试使用免费的Spire.Doc去做Word文档到PDF文档转换时,遇到了相同的问题,上面的两个方案也适用在Spire.Doc组件中。