Example #1
0
        /// <summary>
        /// save product and all entities
        /// </summary>
        /// <param name="contract"></param>
        /// <param name="userId"></param>
        /// <returns>new product id</returns>
        public Guid ProductSaveCompleteById(
            ProductContract contract,
            Guid userId
            )
        {
            // check checksum ( object has hash code )

            // move from contract to data
            var data = new Product();

            CrudeProductService.ContractToData(contract.Product, data.product);
            CrudeProductAttributeService.ContractListToDataList(contract.ProductAttribute, data.ProductAttribute);
            CrudeProductIdentifierService.ContractListToDataList(contract.ProductIdentifier, data.ProductIdentifier);
            CrudeProductInfoService.ContractListToDataList(contract.ProductInfo, data.ProductInfo);
            CrudeProductImageService.ContractListToDataList(contract.ProductImage, data.ProductImage);
            CrudeProductDocumentationService.ContractListToDataList(contract.ProductDocumentation, data.ProductDocumentation);

            // save product
            data.Save(userId);

            return(data.product.ProductId);
        }