skip navigation
  • Product Bundles

    DevCraft

    All Telerik .NET tools and Kendo UI JavaScript components in one package. Now enhanced with:

    • MCP Servers
    • Embedded Reporting
    • Document Processing Libraries
    • SSO Account Sign-in

    Web

    Kendo UI UI for Angular UI for Vue UI for jQuery KendoReact UI for Blazor UI for ASP.NET Core UI for ASP.NET MVC UI for ASP.NET AJAX

    Mobile

    UI for .NET MAUI

    Document Management

    Telerik Document Processing

    Desktop

    UI for .NET MAUI UI for WinUI UI for WinForms UI for WPF

    Reporting

    Telerik Reporting Telerik Report Server

    Testing & Mocking

    Test Studio Telerik JustMock

    CMS

    Sitefinity

    AI Productivity Tools

    MCP Servers

    UI/UX Tools

    ThemeBuilder Design System Kit Templates and Building Blocks

    Debugging

    Fiddler Fiddler Everywhere Fiddler Classic Fiddler Everywhere Reporter FiddlerCore

    Free Tools

    KendoReact Free VB.NET to C# Converter Testing Framework
    View all products
  • Overview
  • Demos
    • What's New
    • Roadmap
    • Release History
  • Support and Learning

    • Support and Learning Hub
    • First Steps
    • Docs
    • Demos
    • Virtual Classroom
    • Use Reports in Applications
    • System Requirements
    • Forums
    • Videos
    • Blogs
    • Submit a Ticket
    • FAQs
  • Pricing
  • Shopping cart
    • Account Overview
    • Your Licenses
    • Downloads
    • Support Center
    • Forum Profile
    • Payment Methods
    • Edit Profile
    • Log out
  • Login
  • Contact Us
  • Try now
Search all

Class FileDefinitionStorage

File-based storage implementation for managing report definition files in the WebReportDesigner system.

Inheritance
System.Object
ResourceStorageBase
ResourceStorage
FileDefinitionStorageBase
FileDefinitionStorage
Inherited Members
FileDefinitionStorageBase.GetFolderContents(String, String[])
FileDefinitionStorageBase.GetByUri<TDefinitionNotFoundException>(String)
FileDefinitionStorageBase.RenameAsync<TInvalidDefinitionNameException>(RenameResourceModel)
FileDefinitionStorageBase.SaveAsync<TDefinitionNotFoundException>(SaveResourceModel, Byte[])
FileDefinitionStorageBase.GetFolderAsync(String)
FileDefinitionStorageBase.GetModelAsync(String)
FileDefinitionStorageBase.DeleteAsync(String)
FileDefinitionStorageBase.Save(SaveResourceModel, Byte[], Boolean, Boolean)
FileDefinitionStorageBase.WrapException<TResult, TDefinitionException, TResourceException>(Func<TResult>)
ResourceStorage.GetOrderedDefaultFoldersToCreate()
ResourceStorage.GetAllByExtension(String[])
ResourceStorage.GetFolderContentsAsync(String)
ResourceStorage.FolderHasContents(String)
ResourceStorage.GetFolderByName(String)
ResourceStorage.CreateFolderAsync(CreateFolderModel)
ResourceStorage.MoveFolder(MoveFolderModel)
ResourceStorage.RenameFolderAsync(RenameFolderModel)
ResourceStorage.DeleteFolderAsync(String)
ResourceStorage.FolderNameExists(String)
ResourceStorage.FolderExists(String)
ResourceStorage.GetAsync(String)
ResourceStorage.ResourceNameExists(String)
ResourceStorage.ResourceExists(String)
ResourceStorage.GetFile(String)
ResourceStorage.GetModelByName(String)
ResourceStorage.GetModelCore<T>(String)
ResourceStorage.Save(String, Byte[])
ResourceStorage.SaveAsync(SaveResourceModel, Byte[], Boolean)
ResourceStorage.SaveCore<T>(SaveResourceModel, Byte[], Boolean)
ResourceStorage.Overwrite(OverwriteResourceModel, Byte[])
ResourceStorage.OverwriteCore<T>(OverwriteResourceModel, Byte[])
ResourceStorage.RenameCore<T>(RenameResourceModel)
ResourceStorage.Move(MoveResourceModel)
ResourceStorage.MoveCore<T>(MoveResourceModel)
ResourceStorage.Search(SearchResourcesModel)
ResourceStorage.CreateDirectory(String[])
ResourceStorage.EnsureDefaultFolders()
ResourceStorage.CreateDefaultFolder(CreateFolderModel)
ResourceStorage.BaseDir
ResourceStorageBase.defaultFolders
ResourceStorageBase.DefaultFoldersToCreate
ResourceStorageBase.ValidateSavedResourceExtension(String)
ResourceStorageBase.IsExtensionValid(String)
Namespace: Telerik.WebReportDesigner.Services
Assembly: Telerik.WebReportDesigner.Services.dll

Syntax

public class FileDefinitionStorage : FileDefinitionStorageBase, IResourceStorage, IHasBaseDir, IDefinitionStorage, IAssetsStorage
Remarks

Provides specialized functionality for storing and retrieving report definition files (.trdx, .trdp, .trbp) from a local directory structure, implementing the IDefinitionStorage interface for report management operations.

Constructors

FileDefinitionStorage(String)

Initializes a new instance of the FileDefinitionStorage class.

Declaration
public FileDefinitionStorage(string baseDir)
Parameters
System.String baseDir

The base directory where the report definitions are stored.

Remarks

Creates a new storage instance with default configuration, using the specified base directory for report definition files.

FileDefinitionStorage(String, String[])

Initializes a new instance of the FileDefinitionStorage class.

Declaration
public FileDefinitionStorage(string baseDir, string[] excludedFolders)
Parameters
System.String baseDir

The base directory where the report definitions are stored.

System.String[] excludedFolders

Relative folder paths to be excluded when retrieving folder contents. Wildcards are not supported.

Remarks

Creates a new storage instance with the ability to exclude specific folders from storage operations, useful for filtering system or temporary directories.

Fields

RootFolderName

The constant name of the Reports root folder.

Declaration
public const string RootFolderName = "Reports"
Field Value
System.String

Remarks

Defines the default root folder name for report definitions in the storage hierarchy.

Properties

FileExtensions

Gets the array of allowed report definition file extensions.

Declaration
protected override string[] FileExtensions { get; }
Property Value
System.String[]

Overrides
FileDefinitionStorageBase.FileExtensions
Remarks

Returns the supported report file extensions (.trdx, .trdp, .trbp) for filtering and validation purposes.

Methods

GetByUri(String)

Retrieves a report definition by its URI and returns the content as a byte array.

Declaration
public override byte[] GetByUri(string uri)
Parameters
System.String uri

The unique resource identifier (URI) of the definition.

Returns
System.Byte[]

The report definition content as a byte array.

Overrides
ResourceStorage.GetByUri(String)
Remarks

Loads the specified report definition file from the storage system, throwing ReportNotFoundException if the file is not found.

RenameAsync(RenameResourceModel)

Renames a report definition file.

Declaration
public override Task<ResourceFileModel> RenameAsync(RenameResourceModel model)
Parameters
RenameResourceModel model

The model containing relevant data used to rename.

Returns
System.Threading.Tasks.Task<ResourceFileModel>

A task representing the asynchronous rename operation with the updated resource model.

Overrides
ResourceStorage.RenameAsync(RenameResourceModel)
Implements
IAssetsStorage.RenameAsync(RenameResourceModel)
Remarks

Updates the report definition filename while preserving its content and location, throwing InvalidReportNameException for invalid names.

SaveAsync(SaveResourceModel, Byte[])

Creates a new or overwrites an existing report definition file with the provided content.

Declaration
public override Task<ResourceFileModel> SaveAsync(SaveResourceModel model, byte[] resource)
Parameters
SaveResourceModel model

The save operation model containing name and location information.

System.Byte[] resource

The report definition content as a byte array.

Returns
System.Threading.Tasks.Task<ResourceFileModel>

A task representing the asynchronous save operation with the saved resource model.

Overrides
ResourceStorage.SaveAsync(SaveResourceModel, Byte[])
Implements
IAssetsStorage.SaveAsync(SaveResourceModel, Byte[])
Remarks

Persists the report definition to the file system, creating directories as needed and throwing ReportNotFoundException for invalid paths.

ValidateDefinitionId(String)

Validates the provided report definition identifier.

Declaration
protected override void ValidateDefinitionId(string definitionId)
Parameters
System.String definitionId

The definition identifier to validate.

Overrides
FileDefinitionStorageBase.ValidateDefinitionId(String)
Remarks

Ensures the definition identifier meets the requirements for report definition naming conventions and throws validation exceptions for invalid identifiers.

Getting Started
  • Install Now
  • Online Demos
Support Resources
  • Documentation
  • Knowledge Base
  • Videos
  • Reporting Samples Repository
  • Reporting Release History
Community
  • Forums
  • Blogs
  • Reporting Feedback Portal

Copyright © 2018 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.

Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.