Сериализация/десериализация StiReport
Добавлено: 30 авг 2016, 16:49
Добрый день.
Возникла потребность сериализации и десериализации объекта StiReport.
Подскажите, как использовать StiSerializing?
Наша сериализация (после StiReport.Render(false)):
в reportSer получим строку с сериализованным отчетом.
Десериализуем эту строку:
StiReport report = null;
В объекте report остается null ='-(
Подскажите как быть)
UPDATE
Падает на ser.Deserialize(report, stream, "Stimulsoft"); с ошибкой:
"StiBorderConverter не может выполнить преобразование из System.String."
В сериализованном отчете по поиску Border были только вхождения вида "<Border>Нет</Border>" и "<Border>Со всех сторон</Border>"
Что-то делаем неправильно?
Возникла потребность сериализации и десериализации объекта StiReport.
Подскажите, как использовать StiSerializing?
Наша сериализация (после StiReport.Render(false)):
Код: Выделить всё
string reportSer = null;
StiSerializing ser = new StiSerializing();
using (var stream = new MemoryStream())
{
ser.Serialize(report, stream, "Stimulsoft");
stream.Position = 0;
var sr = new StreamReader(stream);
reportSer = sr.ReadToEnd();
}
Десериализуем эту строку:
StiReport report = null;
Код: Выделить всё
using (var stream = GenerateStreamFromString(reportSer))
{
ser.Deserialize(report, stream, "Stimulsoft");
}
Подскажите как быть)
UPDATE
Код: Выделить всё
StiSerializing ser = new StiSerializing();
using (var stream = new MemoryStream())
{
ser.Serialize(report, stream, "Stimulsoft");
stream.Position = 0;
ser.Deserialize(report, stream, "Stimulsoft");
}
"StiBorderConverter не может выполнить преобразование из System.String."
В сериализованном отчете по поиску Border были только вхождения вида "<Border>Нет</Border>" и "<Border>Со всех сторон</Border>"
Что-то делаем неправильно?