• Basics
  • Abyss
  • Web APIs
  • C# & Razor
  • .net API
  • JS & TS API

    Show / Hide Table of Contents

    Class CustomDataSourceAdvanced

    Base DataSource class for providing data from external sources. This is the advanced base class which is more complex. You will usually want to use the CustomDataSourceLight.

    Inheritance
    System.Object
    ToSic.Lib.Services.ServiceBase
    ToSic.Lib.Services.ServiceBase<DataSourceBase.MyServices>
    DataSourceBase
    CustomDataSourceAdvanced
    CustomDataSourceLight
    Csv
    DataTable
    Sql
    Pages
    Roles
    Users
    DnnUserProfile
    Implements
    IDataSource
    IDataSourceSource
    IAppIdentity
    IZoneIdentity
    IAppIdentityLight
    ICacheKey
    ICacheExpiring
    ITimestamped
    IHasLog
    IDataSourceTarget
    IDataSourceShared
    IDataSourceLinkable
    Inherited Members
    DataSourceBase.AppId
    DataSourceBase.ZoneId
    DataSourceBase.Guid
    DataSourceBase.Error
    DataSourceBase.CacheChanged(Int64)
    DataSourceBase.Configuration
    DataSourceBase.Link
    DataSourceBase.In
    DataSourceBase.TryGetIn(String)
    DataSourceBase.Out
    DataSourceBase.Item[String]
    DataSourceBase.GetStream(String, String, Boolean, Boolean)
    DataSourceBase.List
    DataSourceBase.Attach(IDataSource)
    DataSourceBase.Attach(String, IDataSource, String)
    DataSourceBase.Attach(String, IDataStream)
    DataSourceBase.ProvideOut(Func<IEnumerable<IEntity>>, String)
    DataSourceBase.ProvideOut(Func<IImmutableList<IEntity>>, String)
    Namespace: ToSic.Eav.DataSource
    Assembly: ToSic.Eav.DataSources.dll
    Syntax
    [PublicApi]
    public abstract class CustomDataSourceAdvanced : DataSourceBase, IDataSource, IDataSourceSource, IAppIdentity, IZoneIdentity, IAppIdentityLight, ICacheInfo, ICacheKey, ICacheExpiring, ITimestamped, ICanPurgeListCache, IHasLog, IDataSourceTarget, IDataTarget, IDataSourceShared, IAppIdentitySync, IDataSourceLinkable
    Remarks

    This has changed a lot in v15 (breaking change). Read about it in the docs.

    Constructors

    | Improve this Doc View Source

    CustomDataSourceAdvanced(CustomDataSourceAdvanced.MyServices, String)

    Initializes an DataSource which will usually provide/generate external data.

    Declaration
    protected CustomDataSourceAdvanced(CustomDataSourceAdvanced.MyServices services, string logName = null)
    Parameters
    Type Name Description
    CustomDataSourceAdvanced.MyServices services

    Dependencies needed by this data source and/or the parent

    System.String logName

    The log name/identifier for insights logging. Optional, but makes debugging a bit easier when provided.

    Remarks

    set the cache creation date to the moment the object is constructed this is important, because the date should stay fixed throughout the lifetime of this object but renew when it is updates

    | Improve this Doc View Source

    CustomDataSourceAdvanced(MyServicesBase<CustomDataSourceAdvanced.MyServices>, String)

    Declaration
    protected CustomDataSourceAdvanced(MyServicesBase<CustomDataSourceAdvanced.MyServices> services, string logName = null)
    Parameters
    Type Name Description
    MyServicesBase<CustomDataSourceAdvanced.MyServices> services
    System.String logName

    Properties

    | Improve this Doc View Source

    CacheTimestamp

    System time-stamp of when the data in this cached thing was initialized or updated. Depending on the implementation, this may go up-stream and return an up-stream value.

    Declaration
    public override long CacheTimestamp { get; }
    Property Value
    Type Description
    System.Int64

    A timestamp as a long number

    Overrides
    DataSourceBase.CacheTimestamp
    | Improve this Doc View Source

    DataFactory

    Declaration
    [PublicApi]
    protected IDataFactory DataFactory { get; }
    Property Value
    Type Description
    IDataFactory

    Implements

    IDataSource
    IDataSourceSource
    IAppIdentity
    IZoneIdentity
    IAppIdentityLight
    ICacheKey
    ICacheExpiring
    ITimestamped
    IHasLog
    IDataSourceTarget
    IDataSourceShared
    IDataSourceLinkable
    • Improve this Doc
    • View Source
    Back to top Generated by DocFX