Elements. Build native projects for any modern development platform, using the language(s) of your choice. Oxygene (Object Pascal), C#, Swift, Java, Go. | RemObjects Software

LINQ to SQL

Language: Oxygene, Platform: Echoes, Category: Framework
https://github.com/remobjects/ElementsSamples/tree/master/Oxygene/Echoes/Framework/LINQ to SQL

Northwind.designer.pas

//------------------------------------------------------------------------------
// <autogenerated>
//     This Oxygene source code was generated by a tool.
//     Oxygene Version: 2.0.0.398
//     Runtime Version: 2.0.50727.1318
//
//     Changes to this file may cause incorrect behavior and will be lost if 
//     the code is regenerated.
// </autogenerated>
//------------------------------------------------------------------------------

{$HIDE PW12}

namespace DLinq;

interface

type
    NorthwindDataContext = public partial class(System.Data.Linq.DataContext)
        private 
            method get_Customers: System.Data.Linq.Table<Customer>;
            method get_Orders: System.Data.Linq.Table<Order>;
            method get_Order_Details: System.Data.Linq.Table<Order_Detail>;
        public 
            property Customers: System.Data.Linq.Table<Customer> read get_Customers;
            property Orders: System.Data.Linq.Table<Order> read get_Orders;
            property Order_Details: System.Data.Linq.Table<Order_Detail> read get_Order_Details;
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            constructor(connection: System.String);
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            constructor(connection: System.Data.IDbConnection);
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            constructor;
    end;
    
    
    [System.Data.Linq.Table(Name := 'dbo.Customers')]
    Customer = public partial class(System.Data.Linq.INotifyPropertyChanging, System.ComponentModel.INotifyPropertyChanged)
        private 
            var _CustomerID: System.String;
            method get_CustomerID: System.String;
            method set_CustomerID(value: System.String);
            var _CompanyName: System.String;
            method get_CompanyName: System.String;
            method set_CompanyName(value: System.String);
            var _ContactName: System.String;
            method get_ContactName: System.String;
            method set_ContactName(value: System.String);
            var _ContactTitle: System.String;
            method get_ContactTitle: System.String;
            method set_ContactTitle(value: System.String);
            var _Address: System.String;
            method get_Address: System.String;
            method set_Address(value: System.String);
            var _City: System.String;
            method get_City: System.String;
            method set_City(value: System.String);
            var _Region: System.String;
            method get_Region: System.String;
            method set_Region(value: System.String);
            var _PostalCode: System.String;
            method get_PostalCode: System.String;
            method set_PostalCode(value: System.String);
            var _Country: System.String;
            method get_Country: System.String;
            method set_Country(value: System.String);
            var _Phone: System.String;
            method get_Phone: System.String;
            method set_Phone(value: System.String);
            var _Fax: System.String;
            method get_Fax: System.String;
            method set_Fax(value: System.String);
            var _Orders: System.Data.Linq.EntitySet<Order>;
            method get_Orders: System.Data.Linq.EntitySet<Order>;
            method set_Orders(value: System.Data.Linq.EntitySet<Order>);
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method Attach_Orders(entity: Order);
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method Detach_Orders(entity: Order);
        protected 
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method OnPropertyChanging(propertyName: System.String);
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method OnPropertyChanged(propertyName: System.String);
        public 
            [System.Data.Linq.Column(Storage := '_CustomerID', Name := 'CustomerID', DBType := 'NChar(5) NOT NULL', IsPrimaryKey := true, CanBeNull := false)]
            property CustomerID: System.String read get_CustomerID write set_CustomerID;
            [System.Data.Linq.Column(Storage := '_CompanyName', Name := 'CompanyName', DBType := 'NVarChar(40) NOT NULL', CanBeNull := false)]
            property CompanyName: System.String read get_CompanyName write set_CompanyName;
            [System.Data.Linq.Column(Storage := '_ContactName', Name := 'ContactName', DBType := 'NVarChar(30)')]
            property ContactName: System.String read get_ContactName write set_ContactName;
            [System.Data.Linq.Column(Storage := '_ContactTitle', Name := 'ContactTitle', DBType := 'NVarChar(30)')]
            property ContactTitle: System.String read get_ContactTitle write set_ContactTitle;
            [System.Data.Linq.Column(Storage := '_Address', Name := 'Address', DBType := 'NVarChar(60)')]
            property Address: System.String read get_Address write set_Address;
            [System.Data.Linq.Column(Storage := '_City', Name := 'City', DBType := 'NVarChar(15)')]
            property City: System.String read get_City write set_City;
            [System.Data.Linq.Column(Storage := '_Region', Name := 'Region', DBType := 'NVarChar(15)')]
            property Region: System.String read get_Region write set_Region;
            [System.Data.Linq.Column(Storage := '_PostalCode', Name := 'PostalCode', DBType := 'NVarChar(10)')]
            property PostalCode: System.String read get_PostalCode write set_PostalCode;
            [System.Data.Linq.Column(Storage := '_Country', Name := 'Country', DBType := 'NVarChar(15)')]
            property Country: System.String read get_Country write set_Country;
            [System.Data.Linq.Column(Storage := '_Phone', Name := 'Phone', DBType := 'NVarChar(24)')]
            property Phone: System.String read get_Phone write set_Phone;
            [System.Data.Linq.Column(Storage := '_Fax', Name := 'Fax', DBType := 'NVarChar(24)')]
            property Fax: System.String read get_Fax write set_Fax;
            event PropertyChanging: System.ComponentModel.PropertyChangedEventHandler; virtual;
            event PropertyChanged: System.ComponentModel.PropertyChangedEventHandler; virtual;
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            constructor;
            [System.Data.Linq.Association(Name := 'FK_Orders_Customers', Storage := '_Orders', OtherKey := 'CustomerID', ThisKey := 'CustomerID')]
            property Orders: System.Data.Linq.EntitySet<Order> read get_Orders write set_Orders;
    end;
    
    
    [System.Data.Linq.Table(Name := 'dbo.Orders')]
    Order = public partial class(System.Data.Linq.INotifyPropertyChanging, System.ComponentModel.INotifyPropertyChanged)
        private 
            var _OrderID: System.Int32;
            method get_OrderID: System.Int32;
            var _CustomerID: System.String;
            method get_CustomerID: System.String;
            method set_CustomerID(value: System.String);
            var _EmployeeID: System.Nullable<System.Int32>;
            method get_EmployeeID: System.Nullable<System.Int32>;
            method set_EmployeeID(value: System.Nullable<System.Int32>);
            var _OrderDate: System.Nullable<System.DateTime>;
            method get_OrderDate: System.Nullable<System.DateTime>;
            method set_OrderDate(value: System.Nullable<System.DateTime>);
            var _RequiredDate: System.Nullable<System.DateTime>;
            method get_RequiredDate: System.Nullable<System.DateTime>;
            method set_RequiredDate(value: System.Nullable<System.DateTime>);
            var _ShippedDate: System.Nullable<System.DateTime>;
            method get_ShippedDate: System.Nullable<System.DateTime>;
            method set_ShippedDate(value: System.Nullable<System.DateTime>);
            var _ShipVia: System.Nullable<System.Int32>;
            method get_ShipVia: System.Nullable<System.Int32>;
            method set_ShipVia(value: System.Nullable<System.Int32>);
            var _Freight: System.Nullable<System.Decimal>;
            method get_Freight: System.Nullable<System.Decimal>;
            method set_Freight(value: System.Nullable<System.Decimal>);
            var _ShipName: System.String;
            method get_ShipName: System.String;
            method set_ShipName(value: System.String);
            var _ShipAddress: System.String;
            method get_ShipAddress: System.String;
            method set_ShipAddress(value: System.String);
            var _ShipCity: System.String;
            method get_ShipCity: System.String;
            method set_ShipCity(value: System.String);
            var _ShipRegion: System.String;
            method get_ShipRegion: System.String;
            method set_ShipRegion(value: System.String);
            var _ShipPostalCode: System.String;
            method get_ShipPostalCode: System.String;
            method set_ShipPostalCode(value: System.String);
            var _ShipCountry: System.String;
            method get_ShipCountry: System.String;
            method set_ShipCountry(value: System.String);
            var _Order_Details: System.Data.Linq.EntitySet<Order_Detail>;
            method get_Order_Details: System.Data.Linq.EntitySet<Order_Detail>;
            method set_Order_Details(value: System.Data.Linq.EntitySet<Order_Detail>);
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method Attach_Order_Details(entity: Order_Detail);
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method Detach_Order_Details(entity: Order_Detail);
            var _Customer: System.Data.Linq.EntityRef<Customer>;
            method get_Customer: Customer;
            method set_Customer(value: Customer);
        protected 
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method OnPropertyChanging(propertyName: System.String);
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method OnPropertyChanged(propertyName: System.String);
        public 
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            constructor;
            [System.Data.Linq.Column(Storage := '_OrderID', Name := 'OrderID', DBType := 'Int NOT NULL IDENTITY', IsPrimaryKey := true, IsDBGenerated := true, CanBeNull := false)]
            property OrderID: System.Int32 read get_OrderID;
            [System.Data.Linq.Column(Storage := '_CustomerID', Name := 'CustomerID', DBType := 'NChar(5)')]
            property CustomerID: System.String read get_CustomerID write set_CustomerID;
            [System.Data.Linq.Column(Storage := '_EmployeeID', Name := 'EmployeeID', DBType := 'Int')]
            property EmployeeID: System.Nullable<System.Int32> read get_EmployeeID write set_EmployeeID;
            [System.Data.Linq.Column(Storage := '_OrderDate', Name := 'OrderDate', DBType := 'DateTime')]
            property OrderDate: System.Nullable<System.DateTime> read get_OrderDate write set_OrderDate;
            [System.Data.Linq.Column(Storage := '_RequiredDate', Name := 'RequiredDate', DBType := 'DateTime')]
            property RequiredDate: System.Nullable<System.DateTime> read get_RequiredDate write set_RequiredDate;
            [System.Data.Linq.Column(Storage := '_ShippedDate', Name := 'ShippedDate', DBType := 'DateTime')]
            property ShippedDate: System.Nullable<System.DateTime> read get_ShippedDate write set_ShippedDate;
            [System.Data.Linq.Column(Storage := '_ShipVia', Name := 'ShipVia', DBType := 'Int')]
            property ShipVia: System.Nullable<System.Int32> read get_ShipVia write set_ShipVia;
            [System.Data.Linq.Column(Storage := '_Freight', Name := 'Freight', DBType := 'Money')]
            property Freight: System.Nullable<System.Decimal> read get_Freight write set_Freight;
            [System.Data.Linq.Column(Storage := '_ShipName', Name := 'ShipName', DBType := 'NVarChar(40)')]
            property ShipName: System.String read get_ShipName write set_ShipName;
            [System.Data.Linq.Column(Storage := '_ShipAddress', Name := 'ShipAddress', DBType := 'NVarChar(60)')]
            property ShipAddress: System.String read get_ShipAddress write set_ShipAddress;
            [System.Data.Linq.Column(Storage := '_ShipCity', Name := 'ShipCity', DBType := 'NVarChar(15)')]
            property ShipCity: System.String read get_ShipCity write set_ShipCity;
            [System.Data.Linq.Column(Storage := '_ShipRegion', Name := 'ShipRegion', DBType := 'NVarChar(15)')]
            property ShipRegion: System.String read get_ShipRegion write set_ShipRegion;
            [System.Data.Linq.Column(Storage := '_ShipPostalCode', Name := 'ShipPostalCode', DBType := 'NVarChar(10)')]
            property ShipPostalCode: System.String read get_ShipPostalCode write set_ShipPostalCode;
            [System.Data.Linq.Column(Storage := '_ShipCountry', Name := 'ShipCountry', DBType := 'NVarChar(15)')]
            property ShipCountry: System.String read get_ShipCountry write set_ShipCountry;
            event PropertyChanging: System.ComponentModel.PropertyChangedEventHandler; virtual;
            event PropertyChanged: System.ComponentModel.PropertyChangedEventHandler; virtual;
            [System.Data.Linq.Association(Name := 'FK_Order_Details_Orders', Storage := '_Order_Details', OtherKey := 'OrderID', ThisKey := 'OrderID')]
            property Order_Details: System.Data.Linq.EntitySet<Order_Detail> read get_Order_Details write set_Order_Details;
            [System.Data.Linq.Association(Name := 'FK_Orders_Customers', Storage := '_Customer', OtherKey := 'CustomerID', ThisKey := 'CustomerID', IsForeignKey := true)]
            property Customer: Customer read get_Customer write set_Customer;
    end;
    
    
    [System.Data.Linq.Table(Name := 'dbo.[Order Details]')]
    Order_Detail = public partial class(System.Data.Linq.INotifyPropertyChanging, System.ComponentModel.INotifyPropertyChanged)
        private 
            var _OrderID: System.Int32;
            method get_OrderID: System.Int32;
            method set_OrderID(value: System.Int32);
            var _ProductID: System.Int32;
            method get_ProductID: System.Int32;
            method set_ProductID(value: System.Int32);
            var _UnitPrice: System.Decimal;
            method get_UnitPrice: System.Decimal;
            method set_UnitPrice(value: System.Decimal);
            var _Quantity: System.Int16;
            method get_Quantity: System.Int16;
            method set_Quantity(value: System.Int16);
            var _Discount: System.Single;
            method get_Discount: System.Single;
            method set_Discount(value: System.Single);
            var _Order: System.Data.Linq.EntityRef<Order>;
            method get_Order: Order;
            method set_Order(value: Order);
        protected 
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method OnPropertyChanging(propertyName: System.String);
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            method OnPropertyChanged(propertyName: System.String);
        public 
            [System.Data.Linq.Column(Storage := '_OrderID', Name := 'OrderID', DBType := 'Int NOT NULL', IsPrimaryKey := true, CanBeNull := false)]
            property OrderID: System.Int32 read get_OrderID write set_OrderID;
            [System.Data.Linq.Column(Storage := '_ProductID', Name := 'ProductID', DBType := 'Int NOT NULL', IsPrimaryKey := true, CanBeNull := false)]
            property ProductID: System.Int32 read get_ProductID write set_ProductID;
            [System.Data.Linq.Column(Storage := '_UnitPrice', Name := 'UnitPrice', DBType := 'Money NOT NULL', CanBeNull := false)]
            property UnitPrice: System.Decimal read get_UnitPrice write set_UnitPrice;
            [System.Data.Linq.Column(Storage := '_Quantity', Name := 'Quantity', DBType := 'SmallInt NOT NULL', CanBeNull := false)]
            property Quantity: System.Int16 read get_Quantity write set_Quantity;
            [System.Data.Linq.Column(Storage := '_Discount', Name := 'Discount', DBType := 'Real NOT NULL', CanBeNull := false)]
            property Discount: System.Single read get_Discount write set_Discount;
            event PropertyChanging: System.ComponentModel.PropertyChangedEventHandler; virtual;
            event PropertyChanged: System.ComponentModel.PropertyChangedEventHandler; virtual;
            [System.Diagnostics.DebuggerNonUserCodeAttribute]
            constructor;
            [System.Data.Linq.Association(Name := 'FK_Order_Details_Orders', Storage := '_Order', OtherKey := 'OrderID', ThisKey := 'OrderID', IsForeignKey := true)]
            property Order: Order read get_Order write set_Order;
    end;
    
implementation

{ NorthwindDataContext }

method NorthwindDataContext.get_Customers: System.Data.Linq.Table<Customer>;
begin
    exit(self.GetTable<Customer>());
end;

method NorthwindDataContext.get_Orders: System.Data.Linq.Table<Order>;
begin
    exit(self.GetTable<Order>());
end;

method NorthwindDataContext.get_Order_Details: System.Data.Linq.Table<Order_Detail>;
begin
    exit(self.GetTable<Order_Detail>());
end;

constructor NorthwindDataContext(connection: System.String);
begin
    inherited constructor(connection);
end;

constructor NorthwindDataContext(connection: System.Data.IDbConnection);
begin
    inherited constructor(connection);
end;

constructor NorthwindDataContext;
begin
    inherited constructor(DLinq.Properties.Settings.Default.NorthwindConnectionString1);
end;

{ Customer }

method Customer.get_CustomerID: System.String;
begin
    exit(self._CustomerID);
end;

method Customer.set_CustomerID(value: System.String);
begin
    if ((self._CustomerID = value) 
                = false) then begin
        self.OnPropertyChanging('CustomerID');
        self._CustomerID := value;
        self.OnPropertyChanged('CustomerID');
    end;
end;

method Customer.get_CompanyName: System.String;
begin
    exit(self._CompanyName);
end;

method Customer.set_CompanyName(value: System.String);
begin
    if ((self._CompanyName = value) 
                = false) then begin
        self.OnPropertyChanging('CompanyName');
        self._CompanyName := value;
        self.OnPropertyChanged('CompanyName');
    end;
end;

method Customer.get_ContactName: System.String;
begin
    exit(self._ContactName);
end;

method Customer.set_ContactName(value: System.String);
begin
    if ((self._ContactName = value) 
                = false) then begin
        self.OnPropertyChanging('ContactName');
        self._ContactName := value;
        self.OnPropertyChanged('ContactName');
    end;
end;

method Customer.get_ContactTitle: System.String;
begin
    exit(self._ContactTitle);
end;

method Customer.set_ContactTitle(value: System.String);
begin
    if ((self._ContactTitle = value) 
                = false) then begin
        self.OnPropertyChanging('ContactTitle');
        self._ContactTitle := value;
        self.OnPropertyChanged('ContactTitle');
    end;
end;

method Customer.get_Address: System.String;
begin
    exit(self._Address);
end;

method Customer.set_Address(value: System.String);
begin
    if ((self._Address = value) 
                = false) then begin
        self.OnPropertyChanging('Address');
        self._Address := value;
        self.OnPropertyChanged('Address');
    end;
end;

method Customer.get_City: System.String;
begin
    exit(self._City);
end;

method Customer.set_City(value: System.String);
begin
    if ((self._City = value) 
                = false) then begin
        self.OnPropertyChanging('City');
        self._City := value;
        self.OnPropertyChanged('City');
    end;
end;

method Customer.get_Region: System.String;
begin
    exit(self._Region);
end;

method Customer.set_Region(value: System.String);
begin
    if ((self._Region = value) 
                = false) then begin
        self.OnPropertyChanging('Region');
        self._Region := value;
        self.OnPropertyChanged('Region');
    end;
end;

method Customer.get_PostalCode: System.String;
begin
    exit(self._PostalCode);
end;

method Customer.set_PostalCode(value: System.String);
begin
    if ((self._PostalCode = value) 
                = false) then begin
        self.OnPropertyChanging('PostalCode');
        self._PostalCode := value;
        self.OnPropertyChanged('PostalCode');
    end;
end;

method Customer.get_Country: System.String;
begin
    exit(self._Country);
end;

method Customer.set_Country(value: System.String);
begin
    if ((self._Country = value) 
                = false) then begin
        self.OnPropertyChanging('Country');
        self._Country := value;
        self.OnPropertyChanged('Country');
    end;
end;

method Customer.get_Phone: System.String;
begin
    exit(self._Phone);
end;

method Customer.set_Phone(value: System.String);
begin
    if ((self._Phone = value) 
                = false) then begin
        self.OnPropertyChanging('Phone');
        self._Phone := value;
        self.OnPropertyChanged('Phone');
    end;
end;

method Customer.get_Fax: System.String;
begin
    exit(self._Fax);
end;

method Customer.set_Fax(value: System.String);
begin
    if ((self._Fax = value) 
                = false) then begin
        self.OnPropertyChanging('Fax');
        self._Fax := value;
        self.OnPropertyChanged('Fax');
    end;
end;

method Customer.OnPropertyChanging(propertyName: System.String);
begin
    if (self.PropertyChanging <> nil) then begin
        self.PropertyChanging(self, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    end;
end;

method Customer.OnPropertyChanged(propertyName: System.String);
begin
    if (self.PropertyChanged <> nil) then begin
        self.PropertyChanged(self, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    end;
end;

constructor Customer;
begin
    self._Orders := new System.Data.Linq.EntitySet<Order>(new System.Action<Order>(@self.Attach_Orders), new System.Action<Order>(@self.Detach_Orders));
end;

method Customer.get_Orders: System.Data.Linq.EntitySet<Order>;
begin
    exit(self._Orders);
end;

method Customer.set_Orders(value: System.Data.Linq.EntitySet<Order>);
begin
    self._Orders.Assign(value);
end;

method Customer.Attach_Orders(entity: Order);
begin
    self.OnPropertyChanging(nil);
    entity.Customer := self;
    self.OnPropertyChanged(nil);
end;

method Customer.Detach_Orders(entity: Order);
begin
    self.OnPropertyChanging(nil);
    entity.Customer := nil;
    self.OnPropertyChanged(nil);
end;

{ Order }

constructor Order;
begin
    self._OrderID := default(System.Int32);
    self._Order_Details := new System.Data.Linq.EntitySet<Order_Detail>(new System.Action<Order_Detail>(@self.Attach_Order_Details), new System.Action<Order_Detail>(@self.Detach_Order_Details));
    self._Customer := default(System.Data.Linq.EntityRef<Customer>);
end;

method Order.get_OrderID: System.Int32;
begin
    exit(self._OrderID);
end;

method Order.get_CustomerID: System.String;
begin
    exit(self._CustomerID);
end;

method Order.set_CustomerID(value: System.String);
begin
    if ((self._CustomerID = value) 
                = false) then begin
        self.OnPropertyChanging('CustomerID');
        self._CustomerID := value;
        self.OnPropertyChanged('CustomerID');
    end;
end;

method Order.get_EmployeeID: System.Nullable<System.Int32>;
begin
    exit(self._EmployeeID);
end;

method Order.set_EmployeeID(value: System.Nullable<System.Int32>);
begin
    if (self._EmployeeID.Equals(value) = false) then begin
        self.OnPropertyChanging('EmployeeID');
        self._EmployeeID := value;
        self.OnPropertyChanged('EmployeeID');
    end;
end;

method Order.get_OrderDate: System.Nullable<System.DateTime>;
begin
    exit(self._OrderDate);
end;

method Order.set_OrderDate(value: System.Nullable<System.DateTime>);
begin
    if (self._OrderDate.Equals(value) = false) then begin
        self.OnPropertyChanging('OrderDate');
        self._OrderDate := value;
        self.OnPropertyChanged('OrderDate');
    end;
end;

method Order.get_RequiredDate: System.Nullable<System.DateTime>;
begin
    exit(self._RequiredDate);
end;

method Order.set_RequiredDate(value: System.Nullable<System.DateTime>);
begin
    if (self._RequiredDate.Equals(value) = false) then begin
        self.OnPropertyChanging('RequiredDate');
        self._RequiredDate := value;
        self.OnPropertyChanged('RequiredDate');
    end;
end;

method Order.get_ShippedDate: System.Nullable<System.DateTime>;
begin
    exit(self._ShippedDate);
end;

method Order.set_ShippedDate(value: System.Nullable<System.DateTime>);
begin
    if (self._ShippedDate.Equals(value) = false) then begin
        self.OnPropertyChanging('ShippedDate');
        self._ShippedDate := value;
        self.OnPropertyChanged('ShippedDate');
    end;
end;

method Order.get_ShipVia: System.Nullable<System.Int32>;
begin
    exit(self._ShipVia);
end;

method Order.set_ShipVia(value: System.Nullable<System.Int32>);
begin
    if (self._ShipVia.Equals(value) = false) then begin
        self.OnPropertyChanging('ShipVia');
        self._ShipVia := value;
        self.OnPropertyChanged('ShipVia');
    end;
end;

method Order.get_Freight: System.Nullable<System.Decimal>;
begin
    exit(self._Freight);
end;

method Order.set_Freight(value: System.Nullable<System.Decimal>);
begin
    if (self._Freight.Equals(value) = false) then begin
        self.OnPropertyChanging('Freight');
        self._Freight := value;
        self.OnPropertyChanged('Freight');
    end;
end;

method Order.get_ShipName: System.String;
begin
    exit(self._ShipName);
end;

method Order.set_ShipName(value: System.String);
begin
    if ((self._ShipName = value) 
                = false) then begin
        self.OnPropertyChanging('ShipName');
        self._ShipName := value;
        self.OnPropertyChanged('ShipName');
    end;
end;

method Order.get_ShipAddress: System.String;
begin
    exit(self._ShipAddress);
end;

method Order.set_ShipAddress(value: System.String);
begin
    if ((self._ShipAddress = value) 
                = false) then begin
        self.OnPropertyChanging('ShipAddress');
        self._ShipAddress := value;
        self.OnPropertyChanged('ShipAddress');
    end;
end;

method Order.get_ShipCity: System.String;
begin
    exit(self._ShipCity);
end;

method Order.set_ShipCity(value: System.String);
begin
    if ((self._ShipCity = value) 
                = false) then begin
        self.OnPropertyChanging('ShipCity');
        self._ShipCity := value;
        self.OnPropertyChanged('ShipCity');
    end;
end;

method Order.get_ShipRegion: System.String;
begin
    exit(self._ShipRegion);
end;

method Order.set_ShipRegion(value: System.String);
begin
    if ((self._ShipRegion = value) 
                = false) then begin
        self.OnPropertyChanging('ShipRegion');
        self._ShipRegion := value;
        self.OnPropertyChanged('ShipRegion');
    end;
end;

method Order.get_ShipPostalCode: System.String;
begin
    exit(self._ShipPostalCode);
end;

method Order.set_ShipPostalCode(value: System.String);
begin
    if ((self._ShipPostalCode = value) 
                = false) then begin
        self.OnPropertyChanging('ShipPostalCode');
        self._ShipPostalCode := value;
        self.OnPropertyChanged('ShipPostalCode');
    end;
end;

method Order.get_ShipCountry: System.String;
begin
    exit(self._ShipCountry);
end;

method Order.set_ShipCountry(value: System.String);
begin
    if ((self._ShipCountry = value) 
                = false) then begin
        self.OnPropertyChanging('ShipCountry');
        self._ShipCountry := value;
        self.OnPropertyChanged('ShipCountry');
    end;
end;

method Order.OnPropertyChanging(propertyName: System.String);
begin
    if (self.PropertyChanging <> nil) then begin
        self.PropertyChanging(self, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    end;
end;

method Order.OnPropertyChanged(propertyName: System.String);
begin
    if (self.PropertyChanged <> nil) then begin
        self.PropertyChanged(self, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    end;
end;

method Order.get_Order_Details: System.Data.Linq.EntitySet<Order_Detail>;
begin
    exit(self._Order_Details);
end;

method Order.set_Order_Details(value: System.Data.Linq.EntitySet<Order_Detail>);
begin
    self._Order_Details.Assign(value);
end;

method Order.Attach_Order_Details(entity: Order_Detail);
begin
    self.OnPropertyChanging(nil);
    entity.Order := self;
    self.OnPropertyChanged(nil);
end;

method Order.Detach_Order_Details(entity: Order_Detail);
begin
    self.OnPropertyChanging(nil);
    entity.Order := nil;
    self.OnPropertyChanged(nil);
end;

method Order.get_Customer: Customer;
begin
    exit(self._Customer.Entity);
end;

method Order.set_Customer(value: Customer);
begin
    if ((self._Customer.Entity = value) 
                = false) then begin
        self.OnPropertyChanging('Customer');
        if (self._Customer.Entity <> nil) then begin
            var temp: Customer := self._Customer.Entity;
            self._Customer.Entity := nil;
            temp.Orders.Remove(self);
        end;
        self._Customer.Entity := value;
        if (value <> nil) then begin
            value.Orders.Add(self);
        end;
        self.OnPropertyChanged('Customer');
    end;
end;

{ Order_Detail }

method Order_Detail.get_OrderID: System.Int32;
begin
    exit(self._OrderID);
end;

method Order_Detail.set_OrderID(value: System.Int32);
begin
    if (self._OrderID.Equals(value) = false) then begin
        self.OnPropertyChanging('OrderID');
        self._OrderID := value;
        self.OnPropertyChanged('OrderID');
    end;
end;

method Order_Detail.get_ProductID: System.Int32;
begin
    exit(self._ProductID);
end;

method Order_Detail.set_ProductID(value: System.Int32);
begin
    if (self._ProductID.Equals(value) = false) then begin
        self.OnPropertyChanging('ProductID');
        self._ProductID := value;
        self.OnPropertyChanged('ProductID');
    end;
end;

method Order_Detail.get_UnitPrice: System.Decimal;
begin
    exit(self._UnitPrice);
end;

method Order_Detail.set_UnitPrice(value: System.Decimal);
begin
    if (self._UnitPrice.Equals(value) = false) then begin
        self.OnPropertyChanging('UnitPrice');
        self._UnitPrice := value;
        self.OnPropertyChanged('UnitPrice');
    end;
end;

method Order_Detail.get_Quantity: System.Int16;
begin
    exit(self._Quantity);
end;

method Order_Detail.set_Quantity(value: System.Int16);
begin
    if (self._Quantity.Equals(value) = false) then begin
        self.OnPropertyChanging('Quantity');
        self._Quantity := value;
        self.OnPropertyChanged('Quantity');
    end;
end;

method Order_Detail.get_Discount: System.Single;
begin
    exit(self._Discount);
end;

method Order_Detail.set_Discount(value: System.Single);
begin
    if (self._Discount.Equals(value) = false) then begin
        self.OnPropertyChanging('Discount');
        self._Discount := value;
        self.OnPropertyChanged('Discount');
    end;
end;

method Order_Detail.OnPropertyChanging(propertyName: System.String);
begin
    if (self.PropertyChanging <> nil) then begin
        self.PropertyChanging(self, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    end;
end;

method Order_Detail.OnPropertyChanged(propertyName: System.String);
begin
    if (self.PropertyChanged <> nil) then begin
        self.PropertyChanged(self, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    end;
end;

constructor Order_Detail;
begin
    self._Order := default(System.Data.Linq.EntityRef<Order>);
end;

method Order_Detail.get_Order: Order;
begin
    exit(self._Order.Entity);
end;

method Order_Detail.set_Order(value: Order);
begin
    if ((self._Order.Entity = value) 
                = false) then begin
        self.OnPropertyChanging('Order');
        if (self._Order.Entity <> nil) then begin
            var temp: Order := self._Order.Entity;
            self._Order.Entity := nil;
            temp.Order_Details.Remove(self);
        end;
        self._Order.Entity := value;
        if (value <> nil) then begin
            value.Order_Details.Add(self);
        end;
        self.OnPropertyChanged('Order');
    end;
end;

end.