Skip to main content
All docs
V24.1

IReportDesignerModelBuilder.BuildJsonModel() Method

Builds a View Model for a Report Designer component and serializes the model to JSON.

Namespace: DevExpress.XtraReports.Web.ReportDesigner.Services

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

NuGet Package: DevExpress.Web.Reporting.Common

Declaration

string BuildJsonModel()

Returns

Type Description
String

A string that is the JSON-serialized model.

Remarks

The following code example is a controller that builds and returns the client-side model to an Angular client app:

[ApiController]
[Authorize]
[Route("api/[controller]")]
public class ReportDesignerSetupController : ControllerBase {
    [HttpPost("[action]")]
    public object GetReportDesignerModel([FromForm] string reportUrl,
        [FromServices] IReportDesignerModelBuilder reportDesignerModel,
        [FromServices] IReportDesignerClientSideModelGenerator modelGenerator) {
        Dictionary<string, object> dataSources = new Dictionary<string, object>();
        //Fill a data source set if needed
        reportDesignerModel
            .Report(reportUrl)
            .DataSources(dataSources)
            .DesignerUri("/DXXRDAngular")
            .ViewerUri("/DXXRDVAngular")
            .QueryBuilderUri("/DXXQBAngular")
            .BuildJsonModel();
        var model = reportDesignerModel.BuildModel();
        var modelJson = modelGenerator.GetJsonModelScript(model);
        return Content(modelJson, MediaTypeNames.Application.Json);
    }
}

View Example

See Also