Class ContentType
Represents the content type that a Content object is based on
Inheritance
Namespace: Umbraco.Cms.Core.Models
Assembly: Umbraco.Core.dll
Syntax
[DataContract(IsReference = true)]
public class ContentType : ContentTypeCompositionBase, IContentType, IContentTypeComposition, IContentTypeBase, IUmbracoEntity, ITreeEntity, IEntity, IDeepCloneable, IRememberBeingDirty, ICanBeDirtyConstructors
View SourceContentType(IShortStringHelper, Int32)
Constuctor for creating a ContentType with the parent's id.
Declaration
public ContentType(IShortStringHelper shortStringHelper, int parentId)Parameters
| Type | Name | Description | 
|---|---|---|
| IShortStringHelper | shortStringHelper | |
| System.Int32 | parentId | 
Remarks
Only use this for creating ContentTypes at the root (with ParentId -1).
ContentType(IShortStringHelper, IContentType, String)
Constuctor for creating a ContentType with the parent as an inherited type.
Declaration
public ContentType(IShortStringHelper shortStringHelper, IContentType parent, string alias)Parameters
| Type | Name | Description | 
|---|---|---|
| IShortStringHelper | shortStringHelper | |
| IContentType | parent | |
| System.String | alias | 
Remarks
Use this to ensure inheritance from parent.
Fields
View SourceSupportsPublishingConst
Declaration
public const bool SupportsPublishingConst = trueField Value
| Type | Description | 
|---|---|
| System.Boolean | 
Properties
View SourceAllowedTemplates
Gets or Sets a list of Templates which are allowed for the ContentType TODO: This should be ignored from cloning!!!!!!!!!!!!!!
- but to do that we have to implement callback hacks, this needs to be fixed in v8, we should not store direct entity
Declaration
[DataMember]
public IEnumerable<ITemplate>? AllowedTemplates { get; set; }Property Value
| Type | Description | 
|---|---|
| System.Nullable<IEnumerable<ITemplate>> | 
DefaultTemplate
Gets or sets the alias of the default Template. TODO: This should be ignored from cloning!!!!!!!!!!!!!!
- but to do that we have to implement callback hacks, this needs to be fixed in v8, we should not store direct entity
Declaration
[IgnoreDataMember]
public ITemplate DefaultTemplate { get; }Property Value
| Type | Description | 
|---|---|
| ITemplate | 
DefaultTemplateId
Declaration
[DataMember]
public int DefaultTemplateId { get; set; }Property Value
| Type | Description | 
|---|---|
| System.Int32 | 
HistoryCleanup
Declaration
public HistoryCleanup HistoryCleanup { get; set; }Property Value
| Type | Description | 
|---|---|
| HistoryCleanup | 
SupportsPublishing
Gets a value indicating whether the content type supports publishing.
Declaration
public override bool SupportsPublishing { get; }Property Value
| Type | Description | 
|---|---|
| System.Boolean | 
Remarks
A publishing content type supports draft and published values for properties. It is possible to retrieve either the draft (default) or published value of a property. Setting the value always sets the draft value, which then needs to be published.
A non-publishing content type only supports one value for properties. Getting the draft or published value of a property returns the same thing, and publishing a value property has no effect.
Methods
View SourceIsAllowedTemplate(Int32)
Determines if AllowedTemplates contains templateId
Declaration
public bool IsAllowedTemplate(int templateId)Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int32 | templateId | The template id to check | 
Returns
| Type | Description | 
|---|---|
| System.Boolean | True if AllowedTemplates contains the templateId else False | 
IsAllowedTemplate(String)
Determines if AllowedTemplates contains templateId
Declaration
public bool IsAllowedTemplate(string templateAlias)Parameters
| Type | Name | Description | 
|---|---|---|
| System.String | templateAlias | The template alias to check | 
Returns
| Type | Description | 
|---|---|
| System.Boolean | True if AllowedTemplates contains the templateAlias else False | 
IsDirty()
Indicates whether the current entity is dirty.
Declaration
public override bool IsDirty()Returns
| Type | Description | 
|---|---|
| System.Boolean | True if entity is dirty, otherwise False | 
RemoveTemplate(ITemplate)
Removes a template from the list of allowed templates
Declaration
public bool RemoveTemplate(ITemplate template)Parameters
| Type | Name | Description | 
|---|---|---|
| ITemplate | template | ITemplate to remove | 
Returns
| Type | Description | 
|---|---|
| System.Boolean | True if template was removed, otherwise False | 
SetDefaultTemplate(ITemplate)
Sets the default template for the ContentType
Declaration
public void SetDefaultTemplate(ITemplate template)Parameters
| Type | Name | Description | 
|---|---|---|
| ITemplate | template | Default ITemplate | 
ToSimple()
Gets an ISimpleContentType corresponding to this content type.
Declaration
public override ISimpleContentType ToSimple()Returns
| Type | Description | 
|---|---|
| ISimpleContentType | 
Explicit Interface Implementations
View SourceIContentType.DeepCloneWithResetIdentities(String)
Creates a deep clone of the current entity with its identity/alias and it's property identities reset
Declaration
IContentType IContentType.DeepCloneWithResetIdentities(string newAlias)Parameters
| Type | Name | Description | 
|---|---|---|
| System.String | newAlias | 
Returns
| Type | Description | 
|---|---|
| IContentType |