Class DataType
Implements IDataType.
Namespace: Umbraco.Cms.Core.Models
Assembly: Umbraco.Core.dll
Syntax
[DataContract(IsReference = true)]
public class DataType : TreeEntityBase, IDataType, IUmbracoEntity, ITreeEntity, IEntity, IDeepCloneable, IRememberBeingDirty, ICanBeDirty
Constructors
View SourceDataType(IDataEditor, IConfigurationEditorJsonSerializer, Int32)
Initializes a new instance of the DataType class.
Declaration
public DataType(IDataEditor editor, IConfigurationEditorJsonSerializer serializer, int parentId = -1)
Parameters
Type | Name | Description |
---|---|---|
IDataEditor | editor | |
IConfigurationEditorJsonSerializer | serializer | |
System.Int32 | parentId |
Properties
View SourceConfiguration
Gets or sets the configuration object.
Declaration
[DataMember]
public object Configuration { get; set; }
Property Value
Type | Description |
---|---|
System.Object |
Remarks
The configuration object is serialized to Json and stored into the database.
The serialized Json is deserialized by the property editor, which by default should return a Dictionary{string, object} but could return a typed object e.g. MyEditor.Configuration.
DatabaseType
Gets or sets the database type for the data type values.
Declaration
[DataMember]
public ValueStorageType DatabaseType { get; set; }
Property Value
Type | Description |
---|---|
ValueStorageType |
Remarks
In most cases this is imposed by the property editor, but some editors may support storing different types.
Editor
Gets or sets the property editor.
Declaration
[IgnoreDataMember]
public IDataEditor Editor { get; set; }
Property Value
Type | Description |
---|---|
IDataEditor |
EditorAlias
Gets the property editor alias.
Declaration
[DataMember]
public string EditorAlias { get; }
Property Value
Type | Description |
---|---|
System.String |
Methods
View SourceSetLazyConfiguration(String)
Lazily set the configuration as a serialized json string.
Declaration
public void SetLazyConfiguration(string configurationJson)
Parameters
Type | Name | Description |
---|---|---|
System.String | configurationJson |
Remarks
Will be de-serialized on-demand.
This method is meant to be used when building entities from database, exclusively. It does NOT register a property change to dirty. It ignores the fact that the configuration may contain the database type, because the datatype DTO should also contain that database type, and they should be the same.
Think before using!