使用Aspose.Word报错there are too many styles in the document

发布时间:2018-11-09编辑:admin阅读(2657)

在使用Aspose.Word组件根据书签插入数据和插入Word文档到模板时出错,报“there are too many styles in the document”,字面翻译是“文档中的样式太多了。”。

参考网上的资料,调试代码,定位到

NodeImporter importer = new NodeImporter(srcdoc, doc, ImportFormatMode.KeepSourceFormatting);

把它改成

NodeImporter importer = new NodeImporter(srcdoc, doc, ImportFormatMode.UseDestinationStyles);

问题依旧。

我觉得我的情况和网上不一样,我的数据并不多,特殊的是我需要插入一个Word文档到模板中,还有根据书签插入数据。而且执行过程中卡了很长时间,于是我就调试,看卡在哪里,发现是卡在一个for循环里。

for (int k = 0; k < mydoc.Range.Bookmarks.Count; k++)
{
    //根据书签插入数据
    //根据书签插入Word文档
}

我查了一下Count,发现两千多,这也太奇怪了,我又一步一步调试,发现Count一直在增加,这得执行到什么时候?我想了一下原因,模板的书签数量没那么多,而且数量是固定的,怎么会一直变大?猜测是插入Word文档后导致的,变成死循环。于是改了一下代码

int c = mydoc.Range.Bookmarks.Count;
for (int k = 0; k < c; k++)
{
    //根据书签插入数据
    //根据书签插入Word文档
}

问题解决。

  关键字:Aspose.Word报错there are too many styles in the document


鼓掌

1

正能量

0

0

呵呵

0


评论区