public void CreateProduct()
        {
            Product product = new Product();

            product.CreatedOn = DateTime.Now;
            product.Measurement = Measurement.SquareFeet;
            product.ModifiedOn = DateTime.Now;
            product.Name = "Siding";

            using (var mm = new MaterialsManager())
            {
                product = mm.CreateProduct(product);
                Assert.IsTrue(product.ID > 0);
            }
        }
        public ActionResult EditProduct(Product product)
        {
            using (var mm = new MaterialsManager())
            {
                product = mm.EditProduct(product);
            }

            return RedirectToAction("Products");
        }
 partial void DeleteProduct(Product instance);
 partial void UpdateProduct(Product instance);
 partial void InsertProduct(Product instance);
        public Product EditProduct(Product product)
        {
            product.ModifiedOn = DateTime.Now;
            Product dbProduct = SingleProduct(product.ID);

            // get the database columns which need to be updated
            var databaseMembers =
                db.Mapping.MappingSource.GetModel(typeof(BizzyQuoteDataContext)).GetMetaType(typeof(Product)).DataMembers
                    .Where(d => d.IsAssociation == false && d.IsDbGenerated == false && d.IsPersistent == true);

            // reflect to get instances of the entity preoprties
            var editProperties =
                from p in dbProduct.GetType().GetProperties()
                join m in databaseMembers on p.Name equals m.Name
                select p;

            // copy the values
            PropertyInfo[] editProps = editProperties.ToArray();
            foreach (PropertyInfo propertyInfo in editProps)
            {
                propertyInfo.SetValue(dbProduct, propertyInfo.GetValue(product, null), null);
            }

            db.SubmitChanges();
            return dbProduct;
        }
        public Product CreateProduct(Product product)
        {
            product.CreatedOn = DateTime.Now;
            product.ModifiedOn = DateTime.Now;

            db.Products.InsertOnSubmit(product);
            db.SubmitChanges();
            return product;
        }