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

    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
    IHasLog.Log
    Namespace: ToSic.Sxc.Code
    Assembly: ToSic.Sxc.dll
    Syntax
    [PublicApi_Stable_ForUseInYourCode]
    public interface IDynamicCode : 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

    This Context tells you about the environment, such as

    • the current User
    • the Page
    • the View
    • the Site

    It's supposed to replace direct access to Dnn or Oqtane object in Razor and WebAPI code, allowing hybrid code that works everywhere.

    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
    dynamic

    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
    IContextData Data { get; }
    Property Value
    Type Description
    IContextData

    An IContextData 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
    dynamic

    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(ICanBeEntity, string)

    Provides an Adam instance for this item and field

    Declaration
    IFolder AsAdam(ICanBeEntity item, string fieldName)
    Parameters
    Type Name Description
    ICanBeEntity item

    The item - an IEntity, IDynamicEntity, ITypedItem etc. often Content or similar

    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
    object dynamicEntity

    the original object

    Returns
    Type Description
    dynamic

    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 = null)
    Parameters
    Type Name Description
    string json

    the original json string

    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
    dynamic

    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
    dynamic

    a dynamic object for easier coding

    | Improve this Doc View Source

    AsEntity(object)

    Unwraps a dynamic entity or ITypedItem back into the underlying IEntity

    Declaration
    IEntity AsEntity(object dynamicEntity)
    Parameters
    Type Name Description
    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
    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
    IEnumerable<dynamic>

    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 source) where T : IDataSource
    Parameters
    Type Name Description
    IDataStream source

    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 Dependency Injection. The service can come from 2sxc, EAV or the underlying platform (Dnn, Oqtane).

    Declaration
    TService GetService<TService>() where TService : class
    Returns
    Type Description
    TService

    An object of the type or interface requested, or null if not found in the DI.

    Type Parameters
    Name Description
    TService

    Interface (preferred) or Class which is needed

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