Компонент доступа к БД/ Пример описания сущности

Пример описания сущности

     Пример кода класса сущности

 public class OrderLinesPK : PrimaryKeys
{
        public int OrderIDRef;
        public int ProductIDRef;
}//OrderLinesPK
public class OrderLinesColumns
{
        public string OrderIDRef;
        public string Order;
        public string ProductIDRef;
        public string Order;
        public string UnitPrice;
        public string Quantity;
        public string Discount;
}//OrderLinesColumns
public class Entity : Base
{
        //описание статичных полей класса

        public static string TableName;
        public static string ObjectName;
        public static bool PrimaryKeyAutoIncrement;
        public static string[] TableColumnsName;
        public static string[] ArrayObjectColumns;
        public static string[] TableColumnsType;
        public static string[] ArrayObjectTypesColumns;

        public static EntityFields Columns;
        public static EntityPK PrimaryKeys;

        //первичный ключ составной
        public static string UsedColumn4Linq = ";

        //поле с типом «timestamp» отстутствует
        public static string VersionTableColumn = ";

        //Описание полей сущности.

        //поле соответствующее полю OrderID таблицы
        public int? OrderIDRef;
        //поле – ссылка на сущность типа Orders
        public Orders Order;
        //поле соответствующее полю ProductId таблицы
        public int? ProductIDRef;
        //поле – ссылка на сущность типа Products
        public Products Product;
        //поле соответствующее полю UnitPrice таблицы
        public decimal? UnitPrice;
        //поле соответствующее полю Quantity таблицы
        public short? Quantity;
        //поле соответствующее полю Discount таблицы
        public float? Discount;

        //Статичный конструктор

        static OrderLines()
        {

        //имя таблицы
        TableName = ""Order Detail"";
        //имя класса сущности
        ObjectName = "OrderLines"';

        PrimaryKeyAutoIncrement = false;

        //массив имен колонок таблицы
        TableColumnsName = new string[7];
        TableColumnsName[0] = OrderID;
        TableColumnsName[1] = OrderID;
        TableColumnsName[2] = ProductID;
        TableColumnsName[3] = ProductID;
        TableColumnsName[4] = UnitPrice;
        TableColumnsName[5] = Quantity;
        TableColumnsName[6] = Discount;
        
        //массив типов колонок таблицы

        TableColumnsType =new string[7];
        TableColumnsType[0] = int;
        TableColumnsType[1] = int;
        TableColumnsType[2] = int;
        TableColumnsType[3] = int;
        TableColumnsType[4] = money;
        TableColumnsType[5] = smallint;
        TableColumnsType[6] = real;
        
        //массив имен полей класса сущности
        
        ArrayObjectColumns =new string[7];
        ArrayObjectColumns [0] = OrderIDRef;
        ArrayObjectColumns [1] = Order;
        ArrayObjectColumns [2] = ProductIDRef;
        ArrayObjectColumns [3] = Product;
        ArrayObjectColumns [4] = UnitPrice;
        ArrayObjectColumns [5] = Quantity;
        ArrayObjectColumns [6] = Discount;
        
        //массив типов полей класса сущности
        
        ArrayObjectTypesColumns =new string[7];
        ArrayObjectTypesColumns [0] = Types.TypeInteger;
        ArrayObjectTypesColumns [1] = "Orders"; //тип сущности;
        ArrayObjectTypesColumns [2] = Types.TypeInteger;
        ArrayObjectTypesColumns [3] = "Products";//тип сущности;
        ArrayObjectTypesColumns [4] = Types.TypeDecimal;
        ArrayObjectTypesColumns [5] = Types.TypeShort;
        ArrayObjectTypesColumns [6] = Types.TypeSingle;
        
        Columns = new OrderLinesColumns();
        
        Base.Init(ObjectName, ArrayObjectColumns, Columns);
        
        PrimaryKeys = new OrderLinesPK();
        
        }
        
}//Entity;