Aspose Words: получайте предупреждения для каждого добавленного документа

Мне нужно видеть все предупреждения о моих сгенерированных документах. У меня есть «основной документ» (docx), и позже я добавляю другие документы (docx) к «основному документу» следующим образом:

Aspose.Words.Document mainDoc = GenerateDocument("main.docx", myModel);
mainDoc.AppendDocument(GenerateDocument("attach1.docx", myModel), ImportFormatMode.KeepSourceFormatting);
mainDoc.AppendDocument(GenerateDocument("attach2.docx", myModel), ImportFormatMode.KeepSourceFormatting);

В методе GenerateDocument я создаю объект Document и устанавливаю WarningCallback следующим образом:

// e.g. fileName = "main.docx"
document.WarningCallback = new MyWarningCallback(fileName); 

[...]

public class MyWarningCallback : IWarningCallback {

    private string _fileName;

    public MyWarningCallback(string fileName)
    {
        _fileName = fileName;
    }

    public void Warning(WarningInfo info)
    {
        myLog.Log(LogLevel.Warn, $"{_fileName}: {info.Description}");
    }
}

Когда я конвертирую mainDoc в PDF, я правильно вижу все предупреждения, но все предупреждения относятся к "mainDoc.docx"; ни одно из предупреждений не относится к другим приспособлениям.

Есть ли способ увидеть имя добавленного документа в предупреждениях?


person Michele    schedule 09.04.2019    source источник
comment
Создайте упрощенное автономное консольное приложение (исходный код без ошибок компиляции), которое поможет нам воспроизвести вашу проблему на нашей стороне, заархивируйте и загрузите его (вместе с тестовыми документами) в Dropbox и поделитесь ссылкой для скачивания здесь для тестирования. Затем мы исследуем проблему на нашей стороне и предоставим вам дополнительную информацию. Я работаю с Aspose в качестве евангелиста разработчиков.   -  person Awais Hafeez    schedule 10.04.2019
comment
@Awais нет, это не то, как работает Stack Overflow. Если вы хотите, чтобы OP связался с вашей службой поддержки, сделайте это. На этом сайте в вопросе должен присутствовать весь код, необходимый для воспроизведения проблемы.   -  person CodeCaster    schedule 10.04.2019


Ответы (1)


Нет, нет возможности увидеть названия приложенных документов. Метод Document.AppendDocument просто копирует содержимое исходного документа в целевой, поэтому содержимое становится частью основного документа.

В качестве возможного решения вы можете конвертировать каждый документ отдельно в PDF и проверять наличие предупреждений, а затем объединять PDF-файлы, например, с помощью Aspose.PDF.

person Alexey Noskov    schedule 23.07.2019