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

    Show / Hide Table of Contents

    Interface IDynamicCode

    Dynamic code files like Razor or WebApis. Supports many properties like App, etc. to ensure that the dynamic code has everything you need.
    Also provides many Conversions between IEntity and IDynamicEntity. Important for dynamic code files like Razor or WebApi. Note that there are many overloads to ensure that AsDynamic and AsEntity "just work" even if you give them the original data.

    Inherited Members
    ICreateInstance.CreateInstancePath
    ICreateInstance.CreateInstance(String, String, String, String, Boolean)
    IHasLog.Log
    Namespace: ToSic.Sxc.Code
    Assembly: ToSic.Sxc.dll
    Syntax
    [PublicApi_Stable_ForUseInYourCode]
    public interface IDynamicCode : ICreateInstance, ICompatibilityLevel, IHasLog

    Properties

    | Improve this Doc View Source

    App

    A fully prepared IApp object letting you access all the data and queries in the current app.

    Declaration
    IApp App { get; }
    Property Value
    Type Description
    IApp

    The current app

    | Improve this Doc View Source

    CmsContext

    The CmsContext tells you about the environment, like what page and module we're running in. It's supposed to replace the Dnn object in Razor and WebAPI code.

    Declaration
    ICmsContext CmsContext { get; }
    Property Value
    Type Description
    ICmsContext
    Remarks

    New in v11.11

    | Improve this Doc View Source

    Content

    The content object of the current razor view - IF the current view has content. If the view is a list, it will return the first item. Will be null otherwise. To tell if it's the demo/default item, use IsDemoItem.

    Declaration
    dynamic Content { get; }
    Property Value
    Type Description
    System.Object

    A IDynamicEntity object with the current content - or null.

    | Improve this Doc View Source

    Data

    The data prepared for the current Code. Usually user data which was manually added to the instance, but can also be a query.

    Declaration
    IBlockDataSource Data { get; }
    Property Value
    Type Description
    IBlockDataSource

    An IBlockDataSource which is as IDataSource.

    | Improve this Doc View Source

    Edit

    Helper commands to enable in-page editing functionality Use it to check if edit is enabled, generate context-json infos and provide toolbar buttons

    Declaration
    IEditService Edit { get; }
    Property Value
    Type Description
    IEditService

    An IEditService object.

    | Improve this Doc View Source

    Header

    The header object of the current razor view, if it's a list and has a header object. If it's a list and doesn't have a header (and no default), it will return null. To tell if it's the demo/default item, use IsDemoItem.

    Declaration
    dynamic Header { get; }
    Property Value
    Type Description
    System.Object

    A IDynamicEntity object with the current content.

    Remarks

    Introduced in 2sxc 10.10 - previously it was called ListContent, now deprecated.

    | Improve this Doc View Source

    Link

    Link helper object to create the correct links

    Declaration
    ILinkService Link { get; }
    Property Value
    Type Description
    ILinkService

    A ILinkService object.

    Methods

    | Improve this Doc View Source

    AsAdam(IEntity, String)

    Provides an Adam instance for this item and field

    Declaration
    IFolder AsAdam(IEntity entity, string fieldName)
    Parameters
    Type Name Description
    IEntity entity

    The entity, often Content or similar

    System.String fieldName

    The field name, like "Gallery" or "Pics"

    Returns
    Type Description
    IFolder

    An Adam object for navigating the assets

    | Improve this Doc View Source

    AsAdam(IDynamicEntity, String)

    Provides an Adam instance for this item and field

    Declaration
    IFolder AsAdam(IDynamicEntity entity, string fieldName)
    Parameters
    Type Name Description
    IDynamicEntity entity

    The entity, often Content or similar

    System.String fieldName

    The field name, like "Gallery" or "Pics"

    Returns
    Type Description
    IFolder

    An Adam object for navigating the assets

    | Improve this Doc View Source

    AsDynamic(Object)

    Convert a dynamic entity and return itself again. This is so coders don't have to worry if the original object was an IEntity or a IDynamicEntity in the first place.

    Declaration
    dynamic AsDynamic(object dynamicEntity)
    Parameters
    Type Name Description
    System.Object dynamicEntity

    the original object

    Returns
    Type Description
    System.Object

    a dynamic object for easier coding

    | Improve this Doc View Source

    AsDynamic(String, String)

    Take a json and provide it as a dynamic object to the code

    Declaration
    dynamic AsDynamic(string json, string fallback = "{}")
    Parameters
    Type Name Description
    System.String json

    the original json string

    System.String fallback

    Alternate string to use, if the original json can't parse. Can also be null or the word "error" if you would prefer an error to be thrown.

    Returns
    Type Description
    System.Object

    A dynamic object representing the original json. If it can't be parsed, it will parse the fallback, which by default is an empty empty dynamic object. If you provide null for the fallback, then you will get null back.

    Remarks

    Added in 2sxc 10.22.00

    | Improve this Doc View Source

    AsDynamic(IEntity)

    Wraps an entity into a IDynamicEntity

    Declaration
    dynamic AsDynamic(IEntity entity)
    Parameters
    Type Name Description
    IEntity entity

    the original object

    Returns
    Type Description
    System.Object

    a dynamic object for easier coding

    | Improve this Doc View Source

    AsEntity(Object)

    Unwraps a dynamic entity back into the underlying IEntity

    Declaration
    IEntity AsEntity(object dynamicEntity)
    Parameters
    Type Name Description
    System.Object dynamicEntity

    the wrapped IEntity

    Returns
    Type Description
    IEntity

    A normal IEntity

    | Improve this Doc View Source

    AsList(Object)

    Converts a list of IEntity objects into a list of IDynamicEntity objects.

    Declaration
    IEnumerable<dynamic> AsList(object list)
    Parameters
    Type Name Description
    System.Object list

    typically a List/IEnumerable of Entities or DynamicEntities.
    Can also be a IDataSource in which case it uses the default stream.

    Returns
    Type Description
    System.Collections.Generic.IEnumerable<System.Object>

    a list of IDynamicEntity objects

    Remarks

    Added in 2sxc 10.21.00

    | Improve this Doc View Source

    CreateSource<T>(IDataSource, ILookUpEngine)

    Create a IDataSource which will process data from the given stream.

    Declaration
    T CreateSource<T>(IDataSource inSource = null, ILookUpEngine configurationProvider = null)
        where T : IDataSource
    Parameters
    Type Name Description
    IDataSource inSource

    The data source which will be the default In of the new data-source.

    ILookUpEngine configurationProvider

    An alternate configuration provider for the DataSource

    Returns
    Type Description
    T

    A typed DataSource object

    Type Parameters
    Name Description
    T

    A data-source type - must be inherited from IDataSource

    | Improve this Doc View Source

    CreateSource<T>(IDataStream)

    Create a IDataSource which will process data from the given stream.

    Declaration
    T CreateSource<T>(IDataStream inStream)
        where T : IDataSource
    Parameters
    Type Name Description
    IDataStream inStream

    The stream which will be the default In of the new data-source.

    Returns
    Type Description
    T

    A typed DataSource object

    Type Parameters
    Name Description
    T

    A data-source type - must be inherited from IDataSource

    | Improve this Doc View Source

    GetService<TService>()

    Get a service from the EAV / 2sxc Dependency Injection.

    Declaration
    TService GetService<TService>()
    Returns
    Type Description
    TService

    An object of the type or interface requested

    Type Parameters
    Name Description
    TService

    Interface (preferred) or Class which is needed

    Remarks

    Added in 2sxc 11.11

    • Improve this Doc
    • View Source
    Back to top Generated by DocFX