// update all object members on a row in table based on primary key
        // links:
        //  docLink: http://sql2x.org/documentationLink/ce75e72e-fb16-4f4e-a2e6-dbd079dfa206
        public void Update(CrudeClientAddressContract contract)
        {
            var data = new CrudeClientAddressData();

            ContractToData(contract, data);
            data.Update();
        }
        // update all object members on a row in table based on primary key, on a transaction
        // the transaction and or connection state is not changed in any way other than what SqlClient does to it.
        // it is the callers responsibility to commit or rollback the transaction
        // links:
        //  docLink: http://sql2x.org/documentationLink/b798ad6b-f4b8-466a-9086-6588a814fcf3
        public void Update(CrudeClientAddressContract contract, SqlConnection connection, SqlTransaction transaction)
        {
            var data = new CrudeClientAddressData();

            ContractToData(contract, data);
            data.Update(connection, transaction);
        }
        // insert all object members as a new row in table
        // links:
        //  docLink: http://sql2x.org/documentationLink/75aad010-e6aa-4f19-a6e5-597456aa20d8
        public void Insert(CrudeClientAddressContract contract)
        {
            var data = new CrudeClientAddressData();

            ContractToData(contract, data);
            data.Insert();
        }
        public CrudeClientAddressContract FetchByAddressLineOneName(string addressLineOneName)
        {
            var dataAccessLayer = new CrudeClientAddressData();
            var contract        = new CrudeClientAddressContract();

            dataAccessLayer.FetchByAddressLineOneName(addressLineOneName);
            DataToContract(dataAccessLayer, contract);

            return(contract);
        }
        // fetch by Primary key into current object
        // links:
        //  docLink: http://sql2x.org/documentationLink/bbab4791-c9e7-49bf-90d5-fca19b1fedaa
        // parameters:
        //  clientAddressId: primary key of table client_address
        public CrudeClientAddressContract FetchByClientAddressId(System.Guid clientAddressId)
        {
            var dataAccessLayer = new CrudeClientAddressData();
            var contract        = new CrudeClientAddressContract();

            dataAccessLayer.FetchByClientAddressId(clientAddressId);
            DataToContract(dataAccessLayer, contract);

            return(contract);
        }
        // copy all rows from a List of serialized data objects to a List of SOAP Contracts
        // links:
        //  docLink: http://sql2x.org/documentationLink/7467f97d-14e5-4ccf-9282-ef8df4f63088
        public static List <CrudeClientAddressContract> DataListToContractList(List <CrudeClientAddressData> dataList)
        {
            var contractList = new List <CrudeClientAddressContract>();

            foreach (CrudeClientAddressData data in dataList)
            {
                var contract = new CrudeClientAddressContract();
                DataToContract(data, contract);
                contractList.Add(contract);
            }

            return(contractList);
        }
        // copy all rows from a List of serialized data objects to a List of SOAP Contracts,
        //  with a limit on number of returned rows and order by columns, starting at a specific row
        // links:
        //  docLink: http://sql2x.org/documentationLink/3fe9f1b3-97b6-4f58-a0f2-adfcbd973bfc
        public List <CrudeClientAddressContract> FetchAllWithLimitAndOffset(int limit, int offset)
        {
            var list = new List <CrudeClientAddressContract>();
            List <CrudeClientAddressData> dataList = CrudeClientAddressData.FetchAllWithLimitAndOffset(limit, offset);

            foreach (CrudeClientAddressData crudeClientAddress in dataList)
            {
                var contract = new CrudeClientAddressContract();
                DataToContract(crudeClientAddress, contract);
                list.Add(contract);
            }

            return(list);
        }
        // copy all rows from a List of serialized data objects in CrudeClientAddressData to a List of SOAP Contracts
        // links:
        //  docLink: http://sql2x.org/documentationLink/9204c68e-93b8-4c77-af3c-3181985ff75f
        public List <CrudeClientAddressContract> FetchAll()
        {
            var list = new List <CrudeClientAddressContract>();
            List <CrudeClientAddressData> dataList = CrudeClientAddressData.FetchAll();

            foreach (CrudeClientAddressData crudeClientAddress in dataList)
            {
                var contract = new CrudeClientAddressContract();
                DataToContract(crudeClientAddress, contract);
                list.Add(contract);
            }

            return(list);
        }
        // fetch all rows from table into new List of Contracts, filtered by any column
        // links:
        //  docLink: http://sql2x.org/documentationLink/ce01ef4a-5cd0-4e51-b211-9c0a15b791a0
        public List <CrudeClientAddressContract> FetchWithFilter(
            System.Guid clientAddressId,
            System.Guid clientId,
            string clientAddressTypeRcd,
            string addressLineOneName,
            string addressLineTwoName,
            string addressLineThreeName,
            string cityName,
            string streetName,
            string stateName,
            string districtName,
            string provinceName,
            string zipCode,
            string poBox,
            string comment,
            System.Guid userId,
            System.DateTime dateTime)
        {
            var list = new List <CrudeClientAddressContract>();
            List <CrudeClientAddressData> dataList = CrudeClientAddressData.FetchWithFilter(
                clientAddressId: clientAddressId,
                clientId: clientId,
                clientAddressTypeRcd: clientAddressTypeRcd,
                addressLineOneName: addressLineOneName,
                addressLineTwoName: addressLineTwoName,
                addressLineThreeName: addressLineThreeName,
                cityName: cityName,
                streetName: streetName,
                stateName: stateName,
                districtName: districtName,
                provinceName: provinceName,
                zipCode: zipCode,
                poBox: poBox,
                comment: comment,
                userId: userId,
                dateTime: dateTime
                );

            foreach (CrudeClientAddressData data in dataList)
            {
                var crudeClientAddressContract = new CrudeClientAddressContract();
                DataToContract(data, crudeClientAddressContract);
                list.Add(crudeClientAddressContract);
            }

            return(list);
        }
 // copy all columns from a serialized data object to a SOAP Contract
 // links:
 //  docLink: http://sql2x.org/documentationLink/7553d6dd-da65-4a72-84c8-81f2f99ef4f5
 public static void DataToContract(CrudeClientAddressData data, CrudeClientAddressContract contract)
 {
     contract.ClientAddressId      = data.ClientAddressId;
     contract.ClientId             = data.ClientId;
     contract.ClientAddressTypeRcd = data.ClientAddressTypeRcd;
     contract.AddressLineOneName   = data.AddressLineOneName;
     contract.AddressLineTwoName   = data.AddressLineTwoName;
     contract.AddressLineThreeName = data.AddressLineThreeName;
     contract.CityName             = data.CityName;
     contract.StreetName           = data.StreetName;
     contract.StateName            = data.StateName;
     contract.DistrictName         = data.DistrictName;
     contract.ProvinceName         = data.ProvinceName;
     contract.ZipCode  = data.ZipCode;
     contract.PoBox    = data.PoBox;
     contract.Comment  = data.Comment;
     contract.UserId   = data.UserId;
     contract.DateTime = data.DateTime;
 }
 // copy all columns from a SOAP Contract to a serialized data object
 // links:
 //  docLink: http://sql2x.org/documentationLink/10700d38-2227-4021-be12-2f4f206f5dd9
 public static void ContractToData(CrudeClientAddressContract contract, CrudeClientAddressData data)
 {
     data.ClientAddressId      = contract.ClientAddressId;
     data.ClientId             = contract.ClientId;
     data.ClientAddressTypeRcd = contract.ClientAddressTypeRcd;
     data.AddressLineOneName   = contract.AddressLineOneName;
     data.AddressLineTwoName   = contract.AddressLineTwoName;
     data.AddressLineThreeName = contract.AddressLineThreeName;
     data.CityName             = contract.CityName;
     data.StreetName           = contract.StreetName;
     data.StateName            = contract.StateName;
     data.DistrictName         = contract.DistrictName;
     data.ProvinceName         = contract.ProvinceName;
     data.ZipCode  = contract.ZipCode;
     data.PoBox    = contract.PoBox;
     data.Comment  = contract.Comment;
     data.UserId   = contract.UserId;
     data.DateTime = contract.DateTime;
 }