What Changed
In v23.1, the following classes became obsolete:
DownloadExportResultControllerBase
DownloadExportResultController
ExportResultStorage
The UseDevExpressServerSideBlazorReportViewer
method became obsolete.
You no longer need to explicitly implement the export controller to print and export reports for the DxReportViewer component.
The following methods were removed from the IExportProcessor
interface:
GetStreamAsync(ExportResultItem item)
FinalizeStreamAsync(ExportResultItem, Stream)
GetExportInfoAsync(ExportResultItem)
The IExportProcessor
now contains the ProcessExportResult(ExportResultItem, Boolean)
method and is used to customize document export in Blazor Hybrid applications.
Reasons for Change
In previous versions, you needed to implement the export controller (which inherits from the DownloadExportResultControllerBase
class) to export and print reports in the Report Viewer component. In v23.1, export and printing no longer require requests to the controller or intermediate data storage.
Impact on Existing Apps
This change affects your application if you used the APIs listed above.
How to Update Existing Apps
Remove the code that implements the export controller from your application:
C#using DevExpress.Blazor.Reporting.Controllers;
using DevExpress.Blazor.Reporting.Internal.Services;
public class DownloadExportResultController : DownloadExportResultControllerBase {
public DownloadExportResultController(ExportResultStorage exportResultStorage) :
base(exportResultStorage) {
}
}
From the application startup code, delete the UseDevExpressServerSideBlazorReportViewer
method call.