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
queryStringstringSQL query to select from.
nameFieldstringItemType field system name for option name.
valueFieldstringItemType field system name for option value.
Properties
NameField
Gets or sets options names.
public string NameField { get; set; }
Property Value
QueryString
Gets or sets the SQL query.
public string QueryString { get; set; }
Property Value
ValueField
Gets or sets options values.
public string ValueField { get; set; }