/// <summary>
        ///     Gets rows from the datasource based on the PK_BillOfMaterials_BillOfMaterialsID index.
        /// </summary>
        /// <param name="start">Row number at which to start reading.</param>
        /// <param name="pageLength">Number of rows to return.</param>
        /// <param name="_billOfMaterialsId">Primary key for BillOfMaterials records.</param>
        /// <param name="transactionManager"><see cref="TransactionManager"/> object</param>
        /// <param name="count">out parameter to get total records for query</param>
        /// <remarks></remarks>
        /// <returns>Returns an instance of the <see cref="Nettiers.AdventureWorks.Entities.BillOfMaterials"/> class.</returns>
        public override Nettiers.AdventureWorks.Entities.BillOfMaterials GetByBillOfMaterialsId(TransactionManager transactionManager, System.Int32 _billOfMaterialsId, int start, int pageLength, out int count)
        {
            try
            {
                WsProxy.AdventureWorksServices proxy = new WsProxy.AdventureWorksServices();
                proxy.Url = Url;
                WsProxy.BillOfMaterials items = proxy.BillOfMaterialsProvider_GetByBillOfMaterialsId(_billOfMaterialsId, start, pageLength, out count);

                return(Convert(items));
            }
            catch (SoapException soex)
            {
                System.Diagnostics.Debug.WriteLine(soex);
                throw soex;
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex);
                throw ex;
            }
        }