Search Results for

    Show / Hide Table of Contents
    View Source

    Class NestedContentManyValueConverter

    Provides an implementation for IPropertyValueConverter for nested content.

    Inheritance
    System.Object
    PropertyValueConverterBase
    NestedContentValueConverterBase
    Namespace: Umbraco.Web.PropertyEditors.ValueConverters
    Assembly: Umbraco.Web.dll
    Syntax
    public class NestedContentManyValueConverter : NestedContentValueConverterBase, IPropertyValueConverter, IDiscoverable
    Remarks

    This is not a simple "value converter" because it really works only for properties.

    Constructors

    View Source

    NestedContentManyValueConverter(IPublishedSnapshotAccessor, IPublishedModelFactory, IProfilingLogger)

    Initializes a new instance of the NestedContentManyValueConverter class.

    Declaration
    public NestedContentManyValueConverter(IPublishedSnapshotAccessor publishedSnapshotAccessor, IPublishedModelFactory publishedModelFactory, IProfilingLogger proflog)
    Parameters
    Type Name Description
    IPublishedSnapshotAccessor publishedSnapshotAccessor
    IPublishedModelFactory publishedModelFactory
    IProfilingLogger proflog

    Methods

    View Source

    ConvertIntermediateToObject(IPublishedElement, IPublishedPropertyType, PropertyCacheLevel, Object, Boolean)

    Converts a property intermediate value to an Object value.

    Declaration
    public override object ConvertIntermediateToObject(IPublishedElement owner, IPublishedPropertyType propertyType, PropertyCacheLevel referenceCacheLevel, object inter, bool preview)
    Parameters
    Type Name Description
    IPublishedElement owner

    The property set owning the property.

    IPublishedPropertyType propertyType

    The property type.

    PropertyCacheLevel referenceCacheLevel

    The reference cache level.

    System.Object inter

    The intermediate value.

    System.Boolean preview

    A value indicating whether conversion should take place in preview mode.

    Returns
    Type Description
    System.Object

    The result of the conversion.

    Remarks

    The converter should know how to convert a null intermediate value, or any intermediate value indicating that no value has been assigned to the property. It is up to the converter to determine what to return in that case: either null, or the default value...

    The referenceCacheLevel is passed to the converter so that it can be, in turn, passed to eg a PublishedFragment constructor. It is used by the fragment and the properties to manage the cache levels of property values. It is not meant to be used by the converter.

    View Source

    ConvertSourceToIntermediate(IPublishedElement, IPublishedPropertyType, Object, Boolean)

    Converts a property source value to an intermediate value.

    Declaration
    public override object ConvertSourceToIntermediate(IPublishedElement owner, IPublishedPropertyType propertyType, object source, bool preview)
    Parameters
    Type Name Description
    IPublishedElement owner

    The property set owning the property.

    IPublishedPropertyType propertyType

    The property type.

    System.Object source

    The source value.

    System.Boolean preview

    A value indicating whether conversion should take place in preview mode.

    Returns
    Type Description
    System.Object

    The result of the conversion.

    Remarks

    The converter should know how to convert a null source value, meaning that no value has been assigned to the property. The intermediate value can be null.

    With the XML cache, source values come from the XML cache and therefore are strings.

    With objects caches, source values would come from the database and therefore be either ints, DateTimes, decimals, or strings.

    The converter should be prepared to handle both situations.

    When source values are strings, the converter must handle empty strings, whitespace strings, and xml-whitespace strings appropriately, ie it should know whether to preserve white spaces.

    View Source

    GetPropertyCacheLevel(IPublishedPropertyType)

    Gets the property cache level.

    Declaration
    public override PropertyCacheLevel GetPropertyCacheLevel(IPublishedPropertyType propertyType)
    Parameters
    Type Name Description
    IPublishedPropertyType propertyType

    The property type.

    Returns
    Type Description
    PropertyCacheLevel

    The property cache level.

    View Source

    GetPropertyValueType(IPublishedPropertyType)

    Gets the type of values returned by the converter.

    Declaration
    public override Type GetPropertyValueType(IPublishedPropertyType propertyType)
    Parameters
    Type Name Description
    IPublishedPropertyType propertyType

    The property type.

    Returns
    Type Description
    System.Type

    The CLR type of values returned by the converter.

    Remarks

    Some of the CLR types may be generated, therefore this method cannot directly return a Type object (which may not exist yet). In which case it needs to return a ModelType instance.

    View Source

    IsConverter(IPublishedPropertyType)

    Gets a value indicating whether the converter supports a property type.

    Declaration
    public override bool IsConverter(IPublishedPropertyType propertyType)
    Parameters
    Type Name Description
    IPublishedPropertyType propertyType

    The property type.

    Returns
    Type Description
    System.Boolean

    A value indicating whether the converter supports a property type.

    • Improve this Doc
    • View Source
    In This Article
    • Constructors
      • NestedContentManyValueConverter(IPublishedSnapshotAccessor, IPublishedModelFactory, IProfilingLogger)
    • Methods
      • ConvertIntermediateToObject(IPublishedElement, IPublishedPropertyType, PropertyCacheLevel, Object, Boolean)
      • ConvertSourceToIntermediate(IPublishedElement, IPublishedPropertyType, Object, Boolean)
      • GetPropertyCacheLevel(IPublishedPropertyType)
      • GetPropertyValueType(IPublishedPropertyType)
      • IsConverter(IPublishedPropertyType)
    Back to top Copyright © 2016-present Umbraco
    Generated by DocFX