// 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 <CrudeProductCategoryDocumentationContract> FetchWithFilter(System.Guid productCategoryDocumentationId, string productCategoryDocumentationTypeRcd, System.Guid productCategoryId, string documentation, System.Guid userId, System.DateTime dateTime)
        {
            var list = new List <CrudeProductCategoryDocumentationContract>();
            List <CrudeProductCategoryDocumentationData> dataList = CrudeProductCategoryDocumentationData.FetchWithFilter(
                productCategoryDocumentationId: productCategoryDocumentationId,
                productCategoryDocumentationTypeRcd: productCategoryDocumentationTypeRcd,
                productCategoryId: productCategoryId,
                documentation: documentation,
                userId: userId,
                dateTime: dateTime
                );

            foreach (CrudeProductCategoryDocumentationData data in dataList)
            {
                var crudeProductCategoryDocumentationContract = new CrudeProductCategoryDocumentationContract();
                DataToContract(data, crudeProductCategoryDocumentationContract);
                list.Add(crudeProductCategoryDocumentationContract);
            }

            return(list);
        }