Skip to main content
A newer version of this page is available.

Settings.AllowSoapLayoutDeserialization Property

Specifies whether to enable deserialization from the SOAP format.

Namespace: DevExpress.XtraReports.Configuration

Assembly: DevExpress.XtraReports.v19.1.dll

NuGet Packages: DevExpress.Reporting.Core, DevExpress.WindowsDesktop.Core

Declaration

public bool AllowSoapLayoutDeserialization { get; set; }

Property Value

Type Description
Boolean

true, to enable SOAP format deserialization; otherwise, false.

Property Paths

You can access this nested property as listed below:

Object Type Path to AllowSoapLayoutDeserialization
Settings
.Default .AllowSoapLayoutDeserialization

Remarks

For security reasons, deserialization of report layouts (REPX files) and style sheets (REPSS files) stored in SOAP format is disabled. An exception is thrown on an attempt to load such a report or style sheet.

If you trust your report source, you can choose one of the following options:

Migrate to the XML format (recommended)

To avoid potential security threats, we strongly recommend that you migrate your reports and style sheets from the SOAP to XML format.

  1. Temporarily enable the AllowSoapLayoutDeserialization option on application startup.
  2. Open a report or style.
  3. Save it to the XML format.

    DevExpress.XtraReports.Configuration.Default.AllowSoapLayoutDeserialization = true;
    
    XtraReport report = XtraReport.FromFile("Layout.repx", true);
    report.SaveLayoutToXml("Layout.repx");
    
    XtraReport reportStyles = new XtraReport();
    reportStyles.StyleSheet.LoadFromFile("Styles.repss");
    reportStyles.StyleSheet.SaveXmlToFile("Styles.repss");
    
  4. Once you migrate all the reports and style sheets, remove the line where you set the AllowSoapLayoutDeserialization property.

Allow SOAP format deserialization

If you fully trust your report source, you can enable the AllowSoapLayoutDeserialization property to suppress the exceptions.

DevExpress.XtraReports.Configuration.Default.AllowSoapLayoutDeserialization = true;
See Also