Example #1
0
        private void ExportReportTo(ExportType format)
        {
            if (format == null)
            {
                throw new ArgumentNullException("format");
            }

            using (var export = new ExportFormatFactory().GetExportFormat(format.Format))
                using (var stream = new MemoryStream())
                {
                    if (export == null)
                    {
                        throw new NullReferenceException("export");
                    }

                    if (export.SupportsEncoding)
                    {
                        export.SetEncoding(format.Encoding);
                    }

                    if (export.SupportsSpacelife)
                    {
                        export.SetSpacelife(format.Spacelife);
                    }

                    export.Export(_report, stream);
                    _exportStreams[format.GetKey()] = new EpsStreamType(format.GetKey(), stream.ToArray());
                }
        }
Example #2
0
        /// <summary>
        /// Получение массива данных по имени типа экспорта отчета.
        /// </summary>
        /// <param name="format">имя типа</param>
        /// <returns>массив данных</returns>
        public byte[] GetExportStream(ExportType et)
        {
            if (et == null)
            {
                throw new ArgumentNullException("et");
            }

            return(_exportStreams.ContainsKey(et.GetKey()) ? _exportStreams[et.GetKey()].Bytes : null);
        }
Example #3
0
        /// <summary>
        /// Добавление типов для экпорта.
        /// </summary>
        public void AddExportType(ExportType et)
        {
            if (et == null)
            {
                throw new ArgumentNullException("et");
            }

            // TODO: Make set
            if (_exportTypes.Any(t => t != null && t.GetKey().Equals(et.GetKey())))
            {
                return;
            }

            _exportTypes.Add(et);
        }