using DevExpress.Persistent.Base; using DevExpress.Persistent.BaseImpl; using DevExpress.Persistent.Validation; using DevExpress.Xpo; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; namespace DurnyklyYol.Module.BusinessObjects { [DefaultClassOptions, NavigationItem("Places")] [ImageName("BO_Organization")] [DefaultProperty(nameof(Name))] //[DefaultListViewOptions(MasterDetailMode.ListViewOnly, false, NewItemRowPosition.None)] //[Persistent("DatabaseTableName")] // Specify more UI options using a declarative approach (https://documentation.devexpress.com/#eXpressAppFramework/CustomDocument112701). public class Warehouse : BaseObject { // Inherit from a different class to provide a custom primary key, concurrency and deletion behavior, etc. (https://documentation.devexpress.com/eXpressAppFramework/CustomDocument113146.aspx). // Use CodeRush to create XPO classes and properties with a few keystrokes. // https://docs.devexpress.com/CodeRushForRoslyn/118557 public Warehouse(Session session) : base(session) { } string name; Point point; string address; Region region; [Size(SizeAttribute.DefaultStringMappingFieldSize), RuleRequiredField(DefaultContexts.Save)] public string Name { get => name; set => SetPropertyValue(nameof(Name), ref name, value); } [RuleRequiredField(DefaultContexts.Save)] public Region Region { get => region; set => SetPropertyValue(nameof(Region), ref region, value); } [Size(SizeAttribute.Unlimited)] public string Address { get => address; set => SetPropertyValue(nameof(Address), ref address, value); } [RuleRequiredField(DefaultContexts.Save)] public Point Point { get => point; set => SetPropertyValue(nameof(Point), ref point, value); } } }