Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

IReportJsonSerializer Interface

In This Article

A service that serializes a report to JSON and deserializes JSON to report.

Namespace: DevExpress.XtraReports.Web.ReportDesigner.Services

Assembly: DevExpress.XtraReports.v24.2.Web.dll

NuGet Package: DevExpress.Web.Reporting.Common

#Declaration

public interface IReportJsonSerializer

#Remarks

The following code uses the ASPxClientReportDesigner.GetJsonReportModel method to serialize the report loaded in the Report Designer and sends the JSON string to the controller. The controller deserializes the report with the IReportJsonSerializer.DeserializeFromJson(String) method and calls the XtraReport.SaveLayoutToXml(Stream) method to save the report in XML format.

<script type="text/javascript">
    function OnSaveButtonClick() {
        var reportTab = reportDesigner1.GetCurrentTab();
        var reportLayout = reportDesigner1.GetJsonReportModel();
        var reportUrl = reportTab.url();
        $.post("/Home/SetReport", { layout: JSON.stringify({ "XtraReportsLayoutSerializer": reportLayout }), url: reportUrl });
    }
</script>
<button onclick="OnSaveButtonClick()">Click To Save</button>

@{
    var designer = Html.DevExpress().ReportDesigner("reportDesigner1")
        .Height("1000px")
        .Bind("TestReport")
}
@designer
See Also