Skip to main content

DashboardExcelDataSource Class

A data source used to extract data from Microsoft Excel workbooks or CSV files.

Namespace: DevExpress.DashboardCommon

Assembly: DevExpress.Dashboard.v22.1.Core.dll

Declaration

public class DashboardExcelDataSource :
    ExcelDataSource,
    IDashboardDataSource,
    IDashboardComponent,
    IComponent,
    IDisposable,
    ISupportInitialize,
    ISupportPrefix,
    IDashboardDataSourceInternal,
    IFederationDataProvider

Remarks

The DashboardExcelDataSource class allows you to extract data from Microsoft Excel workbooks (XLS, XLSX or XLSM files) or CSV files stored on the disk or stream.

Use the AccessSettings class to explicitly allow the path to the data file. To accomplish this, configure rules in the DataResources property to restrict file system access to the specified folders. You can call the SetRules(IAccessRule[]) method when the application starts to specify rules before a dashboard control sets its rules. The SetRules(IAccessRule[]) method can be called only once at the application startup. Otherwise, the method will raise an exception. Alternatively, you can use the TrySetRules(IAccessRule[]) method, which does not raise an exception.

To extract data from the specified workbook or CSV file, do the following.

Finally, add the created DashboardExcelDataSource object to the Dashboard.DataSources collection.

The following code snippet shows how to create an Excel data source that gets data from the A1:L100 range of cells located on the Data worksheet in the SalesPerson.xlsx workbook.

using DevExpress.DashboardCommon;
//...
    DashboardExcelDataSource excelDataSource = new DashboardExcelDataSource()
    {
        FileName = "SalesPerson.xlsx",
        SourceOptions = new DevExpress.DataAccess.Excel.ExcelSourceOptions(
            new DevExpress.DataAccess.Excel.ExcelWorksheetSettings()
            {
                WorksheetName = "Data",
                CellRange = "A1:L100"
            }
        )
    };
    excelDataSource.Fill();

The following code snippet shows how to create an Excel data source and select the A1:L100 range of cells from the specified CSV file.

using DevExpress.DashboardCommon;
using DevExpress.DataAccess.Excel;
// ...
            Dashboard dashboard = new Dashboard();
            DashboardExcelDataSource csvDataSource = new DashboardExcelDataSource();
            csvDataSource.FileName = @"c:\temp\SalesPerson.csv";
            csvDataSource.SourceOptions = new CsvSourceOptions() { CellRange = "A1:L100" };
            csvDataSource.Fill();
            dashboard.DataSources.Add(csvDataSource);

The following code snippets (auto-collected from DevExpress Examples) contain references to the DashboardExcelDataSource class.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

See Also