using System; using System.ComponentModel; using System.ComponentModel.DataAnnotations; using System.Runtime.Serialization; using Umbraco.Core.PropertyEditors; namespace Umbraco.Web.Models.ContentEditing { /// /// Represents a content property to be saved /// [DataContract(Name = "property", Namespace = "")] public class ContentPropertyBasic { /// /// This is the PropertyData ID /// /// /// This is not really used for anything /// [DataMember(Name = "id", IsRequired = true)] [Required] public int Id { get; set; } [DataMember(Name = "dataTypeKey", IsRequired = false)] [ReadOnly(true)] public Guid DataTypeKey { get; set; } [DataMember(Name = "value")] public object Value { get; set; } [DataMember(Name = "alias", IsRequired = true)] [Required(AllowEmptyStrings = false)] public string Alias { get; set; } [DataMember(Name = "editor", IsRequired = false)] public string Editor { get; set; } /// /// Flags the property to denote that it can contain sensitive data /// [DataMember(Name = "isSensitive", IsRequired = false)] public bool IsSensitive { get; set; } /// /// The culture of the property /// /// /// If this is a variant property then this culture value will be the same as it's variant culture but if this /// is an invariant property then this will be a null value. /// [DataMember(Name = "culture")] [ReadOnly(true)] public string Culture { get; set; } /// /// Used internally during model mapping /// [IgnoreDataMember] internal IDataEditor PropertyEditor { get; set; } } }