Как создать документ XPS в службе WCF для хранения и возврата?

У меня есть сервис WCF среднего уровня, и в некоторых случаях мне нужно создать печатный документ, сохранить его для последующего использования в базе данных и вернуть его клиенту.

Мой первый выбор в качестве формата файла был XPS, поэтому я хотел бы создать документ XPS в службе WCF, сохранить его и вернуть.

Есть ли простой способ добиться этого или какой-то другой очевидный способ решения моей проблемы (хранение и возврат печатного документа в WCF), который я пропустил?

1 ответ

Решение

Легко? В XPS нет ничего легкого.

В настоящее время я сериализую XPS в байтовый массив, используя XpsSerializerFactory

   using (MemoryStream ms = new MemoryStream())
    {
        var writer = new XpsSerializerFactory().CreateSerializerWriter(ms);
        writer.Write(fds);
        return ms.ToArray();
    }

Я играл с простой передачей потока памяти, который поддерживает пакет документа вместе с URI документа, но я никогда не проверял это.

Другие вопросы по тегам