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 FileSharedDataSourceStorage

File-based storage implementation for managing shared data source definition files in the WebReportDesigner system.

Inheritance
System.Object
ResourceStorageBase
ResourceStorage
FileDefinitionStorageBase
FileSharedDataSourceStorage
Inherited Members
FileDefinitionStorageBase.GetFolderContents(String, String[])
FileDefinitionStorageBase.GetByUri<TDefinitionNotFoundException>(String)
FileDefinitionStorageBase.RenameAsync<TInvalidDefinitionNameException>(RenameResourceModel)
FileDefinitionStorageBase.SaveAsync<TDefinitionNotFoundException>(SaveResourceModel, Byte[])
FileDefinitionStorageBase.GetFolderAsync(String)
FileDefinitionStorageBase.DeleteAsync(String)
FileDefinitionStorageBase.Save(SaveResourceModel, Byte[], Boolean, Boolean)
FileDefinitionStorageBase.WrapException<TResult, TDefinitionException, TResourceException>(Func<TResult>)
ResourceStorage.RootFolderName
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.GetByUri(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.OverwriteCore<T>(OverwriteResourceModel, Byte[])
ResourceStorage.RenameCore<T>(RenameResourceModel)
ResourceStorage.MoveCore<T>(MoveResourceModel)
ResourceStorage.Search(SearchResourcesModel)
ResourceStorage.CreateDirectory(String[])
ResourceStorage.EnsureDefaultFolders()
ResourceStorage.CreateDefaultFolder(CreateFolderModel)
ResourceStorage.BaseDir
ResourceStorageBase.defaultFolders
ResourceStorageBase.DefaultFoldersToCreate
ResourceStorageBase.ValidateSavedResourceExtension(String)
Namespace: Telerik.WebReportDesigner.Services
Assembly: Telerik.WebReportDesigner.Services.dll

Syntax

public class FileSharedDataSourceStorage : FileDefinitionStorageBase, IHasBaseDir, ISharedDataSourceStorage, IResourceStorage, IAssetsStorage
Remarks

Provides specialized functionality for storing and retrieving shared data source files (.sdsx, .sdsp) from a local directory structure, implementing the ISharedDataSourceStorage interface with automatic description extraction and validation.

Constructors

FileSharedDataSourceStorage(String)

Initializes a new instance of the FileSharedDataSourceStorage class.

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

The base directory where the SharedDataSource definitions are stored.

Remarks

Creates a new shared data source storage instance with default configuration, using the specified base directory for shared data source files.

FileSharedDataSourceStorage(String, String[])

Initializes a new instance of the FileSharedDataSourceStorage class with specific definition folders.

Declaration
public FileSharedDataSourceStorage(string baseDir, string[] definitionFolders)
Parameters
System.String baseDir

The base directory where the SharedDataSource subfolders are stored.

System.String[] definitionFolders

The folders where the SharedDataSource definitions are stored. Pass an empty string array to include all the folders.

Remarks

Creates a new shared data source storage instance with specific folder configuration for organizing shared data source files.

FileSharedDataSourceStorage(String, String[], String[])

Initializes a new instance of the FileSharedDataSourceStorage class with folder exclusions.

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

The base directory where the SharedDataSource definitions are stored.

System.String[] definitionFolders

The folders where the SharedDataSource definitions are stored. Pass an empty string array to include all the folders.

System.String[] excludedFolders

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

Remarks

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

Properties

FileExtensions

Gets the array of allowed shared data source file extensions.

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

Overrides
FileDefinitionStorageBase.FileExtensions
Remarks

Returns the supported shared data source file extensions (.sdsx, .sdsp) for filtering and validation purposes.

Methods

GetModelAsync(String)

Finds a shared data source resource by its URI and returns the information about it with description.

Declaration
public override Task<ResourceFileModel> GetModelAsync(string uri)
Parameters
System.String uri

The unique resource identifier (URI)

Returns
System.Threading.Tasks.Task<ResourceFileModel>

A task representing the asynchronous operation with the SharedDataSourceModel containing resource information.

Overrides
FileDefinitionStorageBase.GetModelAsync(String)
Implements
IAssetsStorage.GetModelAsync(String)
Remarks

Automatically extracts and sets the description from the shared data source file content for complete metadata information.

IsExtensionValid(String)

Determines if the provided resource extension is valid for shared data sources.

Declaration
protected override bool IsExtensionValid(string resourceExtension)
Parameters
System.String resourceExtension

The file extension to validate.

Returns
System.Boolean

True if the extension is valid for shared data sources, false otherwise.

Overrides
ResourceStorageBase.IsExtensionValid(String)
Remarks

Validates that the extension is one of the supported shared data source formats (.sdsx, .sdsp).

Move(MoveResourceModel)

Moves a shared data source resource to a new parent location.

Declaration
public override ResourceFileModel Move(MoveResourceModel model)
Parameters
MoveResourceModel model

The model containing the move operation data

Returns
ResourceFileModel

The SharedDataSourceModel containing information about the moved resource.

Overrides
ResourceStorage.Move(MoveResourceModel)
Implements
IResourceStorage.Move(MoveResourceModel)
Remarks

Relocates the shared data source file while preserving its content and automatically updating the description metadata.

Overwrite(OverwriteResourceModel, Byte[])

Overwrites an existing shared data source definition file with new content.

Declaration
public override ResourceFileModel Overwrite(OverwriteResourceModel model, byte[] resource)
Parameters
OverwriteResourceModel model

The model containing overwrite operation data.

System.Byte[] resource

The new shared data source definition content as a byte array.

Returns
ResourceFileModel

The SharedDataSourceModel containing information about the overwritten resource.

Overrides
ResourceStorage.Overwrite(OverwriteResourceModel, Byte[])
Implements
IResourceStorage.Overwrite(OverwriteResourceModel, Byte[])
Remarks

Validates the resource URI and automatically extracts the description from the new shared data source content.

RenameAsync(RenameResourceModel)

Renames a shared data source definition file.

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

The model containing rename operation data.

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

Validates the new name for shared data source naming conventions and automatically updates the description metadata.

SaveAsync(SaveResourceModel, Byte[])

Saves shared data source content and returns the resource information with extracted description.

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

The model containing the save operation data

System.Byte[] resource

The contents of the resource.

Returns
System.Threading.Tasks.Task<ResourceFileModel>

A task representing the asynchronous save operation with the SharedDataSourceModel containing resource information.

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

Creates the directory path if it doesn't exist and automatically extracts the description from the shared data source definition for metadata purposes.

Exceptions
InvalidResourceNameException

Thrown when the resource name is invalid.

ValidateDefinitionId(String)

Validates the provided shared data source definition identifier.

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

The definition identifier to validate.

Overrides
FileDefinitionStorageBase.ValidateDefinitionId(String)
Remarks

Enforces shared data source naming conventions and URI format requirements for proper resource identification.

Explicit Interface Implementations

ISharedDataSourceStorage.GetModelAsync(String)

Retrieves the shared data source model at the specified URI or returns null if not found.

Declaration
Task<SharedDataSourceModel> ISharedDataSourceStorage.GetModelAsync(string uri)
Parameters
System.String uri

The unique resource identifier (URI) of the resource.

Returns
System.Threading.Tasks.Task<SharedDataSourceModel>

A task representing the asynchronous operation with the SharedDataSourceModel containing resource information.

Implements
ISharedDataSourceStorage.GetModelAsync(String)
Remarks

Implements the ISharedDataSourceStorage interface method, providing type-safe access to shared data source models.

ISharedDataSourceStorage.RenameAsync(RenameResourceModel)

Renames a shared data source by its model specification.

Declaration
Task<SharedDataSourceModel> ISharedDataSourceStorage.RenameAsync(RenameResourceModel model)
Parameters
RenameResourceModel model

The model containing relevant data used to rename

Returns
System.Threading.Tasks.Task<SharedDataSourceModel>

A task representing the asynchronous rename operation with the SharedDataSourceModel containing resource information.

Implements
ISharedDataSourceStorage.RenameAsync(RenameResourceModel)
Remarks

Implements the ISharedDataSourceStorage interface method, providing type-safe access to shared data source rename operations.

ISharedDataSourceStorage.SaveAsync(SaveResourceModel, Byte[])

Creates a new or overwrites an existing shared data source definition file with the provided content.

Declaration
Task<SharedDataSourceModel> ISharedDataSourceStorage.SaveAsync(SaveResourceModel model, byte[] resource)
Parameters
SaveResourceModel model

The model containing save operation data.

System.Byte[] resource

The shared data source definition content as a byte array.

Returns
System.Threading.Tasks.Task<SharedDataSourceModel>

A task representing the asynchronous save operation with the SharedDataSourceModel containing resource information.

Implements
ISharedDataSourceStorage.SaveAsync(SaveResourceModel, Byte[])
Remarks

Implements the ISharedDataSourceStorage interface method, automatically extracting and setting the description from the shared data source content.

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.