Webiant Logo Webiant Logo
  1. No results found.

    Try your search with a different keyword or use * as a wildcard.

ProductAttributeMapping.cs

using Nop.Core.Domain.Localization;

namespace Nop.Core.Domain.Catalog;

/// 
/// Represents a product attribute mapping
/// 
public partial class ProductAttributeMapping : BaseEntity, ILocalizedEntity
{
    /// 
    /// Gets or sets the product identifier
    /// 
    public int ProductId { get; set; }

    /// 
    /// Gets or sets the product attribute identifier
    /// 
    public int ProductAttributeId { get; set; }

    /// 
    /// Gets or sets a value a text prompt
    /// 
    public string TextPrompt { get; set; }

    /// 
    /// Gets or sets a value indicating whether the entity is required
    /// 
    public bool IsRequired { get; set; }

    /// 
    /// Gets or sets the attribute control type identifier
    /// 
    public int AttributeControlTypeId { get; set; }

    /// 
    /// Gets or sets the display order
    /// 
    public int DisplayOrder { get; set; }

    //validation fields

    /// 
    /// Gets or sets the validation rule for minimum length (for textbox and multiline textbox)
    /// 
    public int? ValidationMinLength { get; set; }

    /// 
    /// Gets or sets the validation rule for maximum length (for textbox and multiline textbox)
    /// 
    public int? ValidationMaxLength { get; set; }

    /// 
    /// Gets or sets the validation rule for file allowed extensions (for file upload)
    /// 
    public string ValidationFileAllowedExtensions { get; set; }

    /// 
    /// Gets or sets the validation rule for file maximum size in kilobytes (for file upload)
    /// 
    public int? ValidationFileMaximumSize { get; set; }

    /// 
    /// Gets or sets the default value (for textbox and multiline textbox)
    /// 
    public string DefaultValue { get; set; }

    /// 
    /// Gets or sets a condition (depending on other attribute) when this attribute should be enabled (visible).
    /// Leave empty (or null) to enable this attribute.
    /// Conditional attributes that only appear if a previous attribute is selected, such as having an option 
    /// for personalizing clothing with a name and only providing the text input box if the "Personalize" radio button is checked.
    /// 
    public string ConditionAttributeXml { get; set; }

    /// 
    /// Gets the attribute control type
    /// 
    public AttributeControlType AttributeControlType
    {
        get => (AttributeControlType)AttributeControlTypeId;
        set => AttributeControlTypeId = (int)value;
    }
}