Table of Contents

Class OptionSqlAttribute

Namespace
Dynamicweb.Content.Items.Annotations
Assembly
Dynamicweb.dll

Provides information about the SQL based field option.

[AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = false)]
public class OptionSqlAttribute : Attribute
Inheritance
OptionSqlAttribute
Inherited Members

Examples

using System;
using System.Collections.Generic;
using Dynamicweb.Content.Items;
using Dynamicweb.Content.Items.Activation;
using Dynamicweb.Content.Items.Annotations;
using Dynamicweb.Content.Items.Editors;
using Dynamicweb.Content.Items.Metadata;
using Dynamicweb.Core.UI.Icons;

namespace Dynamicweb.Examples.Items;

[Item("Item with all field types", "The example of code-first item")]
[AreaRule,
 ModuleAttachmentRule(true),
 StructureRule(StructureContextType.Pages, StructureContextType.Paragraphs),
 ParentRule(ParentRestrictionRule.ParentType.RootOfWebsite, ParentRestrictionRule.ParentType.RegularPage),
 ChildRule(true), ChildRule("ExampleCategory", "ExampleRegion")]
[Category("Example"),
 PageDefaultView(PageDefaultView.Paragraph),
 Icon(KnownIcon.Archive)]
public class ExampleAllFieldTypesItem : ItemEntry
{
    [Group("StandardFields")]
    [Checkbox]
    public bool FieldCheckbox { get; set; }

    [Group("StandardFields")]
    [Color("Color", Presets = "#FFF, #151515, #444544, #5E5E5E, #005731, #287D59, #31988D, #2D73AB, #384E9A, #703F96, #9F3F95, #A93948, #E6A04B, #DD823A, #9BBF53, #0085CA, #1C588F")]
    [DefaultValue("#151515")]
    public string FieldColor { get; set; } = "";

    [Group("StandardFields")]
    [DefaultValue("Now")]
    public DateTime FieldDate { get; set; }

    [Group("StandardFields")]
    [DefaultValue("Now")]
    [DateTime]
    public DateTime FieldDateTime { get; set; }

    [Group("StandardFields")]
    [Decimal]
    public decimal FieldDecimal { get; set; }

    [Group("StandardFields")]
    [File("File", "/Images/Products", "gif,jpg,png", AllowFrontendUpload = true, ShowAsImageSelector = true, UseFocalSelector = true)]
    public string FieldFile { get; set; } = "";

    [Group("StandardFields")]
    [Folder("Folder", "*.png")]
    public string FieldFolder { get; set; } = "";

    [Group("StandardFields")]
    [Geolocation("Geolocation", AddressFields = "Street,Number,City,Zip")]
    public string FieldGeolocation { get; set; } = "";

    [Group("StandardFields")]
    [GoogleFont("Google font", "Lato", "italic")]
    public string FieldGoogleFont { get; set; } = "";

    [Group("StandardFields")]
    [ColorSwatch("Font color")]
    public string FieldFontColor { get; set; } = "";

    [Group("StandardFields")]
    [HiddenField]
    public string FieldHidden { get; set; } = "";

    [Group("StandardFields")]
    [InputHtml5("Html5", InputType = "Number", Min = 0, Max = 10)]
    public int FieldHtml5 { get; set; }

    [Group("StandardFields")]
    [Integer]
    public int FieldInteger { get; set; }

    [Group("StandardFields")]
    [Link]
    public string FieldLink { get; set; } = "";

    [Group("StandardFields")]
    [LinkToItem]
    public string FieldLinkToItem { get; set; } = "";

    [Group("StandardFields")]
    [ItemTypeEditor("Item", "ExampleCustomer")]
    public string FieldItem { get; set; } = "";

    [Group("StandardFields")]
    [Password]
    public string FieldPassword { get; set; } = "";

    [Group("StandardFields")]
    public string FieldText { get; set; } = "";

    [Group("StandardFields")]
    [LongText]
    public string FieldLongText { get; set; } = "";

    [Group("StandardFields")]
    [RichText]
    public string FieldRichText { get; set; } = "";

    [Group("StandardFields")]
    [ItemRelationList("Relation list", "ExampleNewsItem", ItemRelationListEditor.ItemListSource.Page, "Title", "SubTitle")]
    [Option("Title"), Option("Subtitle"), Option("NewsType")]
    public int FieldRelationList { get; set; }

    [Group("ListFields", LayoutGroupMetadata.GroupCollapsibleState.Collapsed)]
    [DropdownList(RemoveNothingSelected = true)]
    [OptionItem("ExampleCategory", "Name", "Id", SourceType = FieldOptionItemSourceType.CurrentArea)]
    public string FieldDropdownList { get; set; } = "";

    [Group("ListFields")]
    [CheckboxList(AllowOptionsSorting = true)]
    [OptionSql("SELECT TOP 10 ProductId, ProductName FROM EcomProducts WHERE ProductPrice > 100", "ProductName", "ProductId")]
    public IEnumerable<string> FieldCheckboxList { get; set; } = [];

    [Group("ListFields")]
    [RadiobuttonList]
    [Option("News"), Option("Featured"), Option("Add")]
    [DefaultValue("News")]
    public string FieldRadiobuttonList { get; set; } = "";

    [Group("ListFields")]
    [RadiobuttonList(IconPosition = 1, IconMaxWidth = 140, IconMaxHeight = 100)]
    [OptionFolder("/Images")]
    public string FieldRadioFolderList { get; set; } = "";

    [Group("ListFields")]
    [EditableList]
    public string FieldEditableList { get; set; } = "";

    [Group("SpecialFields")]
    [SingleUser(Name = "User")]
    public string FieldUser { get; set; } = "";

    [Group("SpecialFields")]
    [SingleUserGroup(Name = "Group")]
    public string FieldGroup { get; set; } = "";

    [Group("SpecialFields")]
    [UserGroups(Name = "Groups")]
    public string FieldGroups { get; set; } = "";
}

Constructors

OptionSqlAttribute(string, string, string)

Initializes a new instance of an object.

public OptionSqlAttribute(string queryString, string nameField, string valueField)

Parameters

queryString string

SQL query to select from.

nameField string

ItemType field system name for option name.

valueField string

ItemType field system name for option value.

Properties

NameField

Gets or sets options names.

public string NameField { get; set; }

Property Value

string

QueryString

Gets or sets the SQL query.

public string QueryString { get; set; }

Property Value

string

ValueField

Gets or sets options values.

public string ValueField { get; set; }

Property Value

string
To top