protected virtual KeyValuePair <string, byte[]> ExportData( [DataSourceRequest] DataSourceRequest request, string searchQueryId, ExportFactory.ExportType type, string firstLevelName = null, string secondLevelName = null) { request = request ?? new DataSourceRequest(); request.PageSize = 0; var result = GetSelectedItems(searchQueryId); if (result.IsNullOrEmpty()) { result = GetFindResult(searchQueryId); } var data = InitGridData(request, result); if (data.IsNullOrEmpty()) { throw new WarningException(resource.Get("NoDataFound") ?? "No data found"); } var extension = ExportFactory.GetFileExtensionByType(type); var fileName = $"{(Title.IsNotNullOrEmpty() ? Title : "export")}-{DateTime.Now:d}.{extension}"; var exporter = ExportFactory.CreateExport(type); var blob = exporter.Export(data, firstLevelName, secondLevelName); return(new KeyValuePair <string, byte[]>(fileName, blob)); }
public virtual FileResult Export( [DataSourceRequest] DataSourceRequest request, string searchQueryId, ExportFactory.ExportType type) { var data = ExportData(request, searchQueryId, type); return(File( data.Value, MimeMapping.GetMimeMapping(data.Key), data.Key)); }