public ActionResult Create(FormCollection collection) { try { // TODO: Add insert logic here //Product c = new Product(); //產生一個Product物件 Product P = new Product(); //將上面的collection帶入就是傳進來的 collection["這是網頁上的name"] //型別的部分滑鼠移過去就可以看到要轉什麼型別 P.ProductName = Convert.ToString(collection["ProductName"]); P.Price = Convert.ToDecimal(collection["Price"]); P.Active = true; P.Stock = Convert.ToDecimal(collection["Stock"]); var db = new FabricsEntities(); db.Product.Add(P); db.SaveChanges(); return(RedirectToAction("Index")); } catch { return(View()); } }
// GET: CRUD/Delete/5 public ActionResult Delete(int id) { var db = new FabricsEntities(); var client = db.Client.Find(id); if (client != null) { foreach (var item in client.Order.ToList()) { db.OrderLine.RemoveRange(item.OrderLine.ToList()); } db.Order.RemoveRange(client.Order.ToList()); db.Client.Remove(client); db.SaveChanges(); return(RedirectToAction("Index")); } else { return(RedirectToAction("Index")); } }
public override void OnActionExecuting(ActionExecutingContext filterContext) { FabricsEntities db = new FabricsEntities(); var items = new List <SelectListItem>(); var price_list = (from p in db.Product select new { value = p.Price, Text = p.Price }).Distinct().OrderBy(p => p.value); filterContext.Controller.ViewBag.Price = new SelectList(price_list, "Value", "Text"); }
public ActionResult BatchUpdate() { var db = new FabricsEntities(); var data = db.Product.Where(p => p.ProductName.StartsWith("C")); foreach (var item in data) { item.Price = item.Price * 2; } db.SaveChanges(); //return View(); return(RedirectToAction("Index")); }
public ActionResult PriceUp() { var db = new FabricsEntities(); //foreach (var item in db.Product) //{ // item.Price += 1; //} //db.SaveChanges(); db.Database.ExecuteSqlCommand("UPDATE dbo.Product SET Price=Price+1"); return(RedirectToAction("Top10")); }
public override void OnActionExecuting(ActionExecutingContext filterContext) { var db = new FabricsEntities(); var prices = db.Product.AsEnumerable() .Select(p => new { Text = string.Format("{0:C}", p.Price), Value = p.Price }) .Distinct() .OrderBy(p => p.Value); filterContext.Controller.ViewData["Price"] = new SelectList(prices, "Value", "Text"); }
// GET: CRUD public ActionResult Index() { var db = new FabricsEntities(); //var data = db.Product.Where(p => p.ProductName.StartsWith("C")&p.Price>=5&p.Price<=10); //var data = db.Product; //var data = db.Database.ExecuteSqlCommand("select * from Product"); 有錯 //最原始的做出sql,帶有回傳型別 var data = db.Database.SqlQuery <Product>("select * from Product").AsQueryable(); //預存程序做法,但回傳型別要注意,可去模型瀏覽器將預存程序回傳的型別做修正,因為是強型別 //db.QueryProduct().AsQueryable(); return(View(data)); }
public ActionResult ArrayBinding() { FabricsEntities db = new FabricsEntities(); var data = from client in db.Clients select new DemoViewModel() { UserName = client.FirstName, Password = client.LastName, Confirm = client.LastName, UserAge = 20 }; return(View(data.Take(5))); }
public string TestInsert() { var db = new FabricsEntities(); var product = new Product() { ProductName = "Entity", Price = 99, Stock = 10, Active = true }; db.Product.Add(product); repo.UnitOfWork.Commit(); return("OK: " + product.ProductId); }
public ActionResult BatchUpdate() { var db = new FabricsEntities(); var data = db.Product.Where(p => p.ProductName.StartsWith("A")); foreach (var item in data) { item.Price = item.Price * 2; } try { db.SaveChanges(); } catch (DbEntityValidationException ex) { throw ex; } return(RedirectToAction("Index")); }
public ActionResult Top10() { var db = new FabricsEntities(); var result = db.Product.Take(10); // LINQ ( C# 3.0 ) //var data = "SELECT * FROM table WHERE ..."; //var data = from p in result // select new ProductCreationVM() // { // ProductId = p.ProductId, // ProductName = p.ProductName, // Price = p.Price, // OrderLineCount = p.OrderLine.Count() // }; var data = db.Database.SqlQuery <ProductCreationVM>( "SELECT TOP 10 *, OrderLineCount=(SELECT COUNT(*) FROM dbo.OrderLine o WHERE o.ProductId=p.ProductId) FROM dbo.Product p"); return(View(data)); }
// GET: CRUD public ActionResult Index(string keyword) { List <SelectListItem> items = new List <SelectListItem>(); items.Add(new SelectListItem { Text = "A", Value = "A" }); items.Add(new SelectListItem { Text = "B", Value = "B" }); items.Add(new SelectListItem { Text = "C", Value = "C", Selected = true }); ViewBag.ProductNameStartsWith = items; //&& p.ProductName.StartsWith() var db = new FabricsEntities(); var data = db.Product.Where(p => p.ProductName.StartsWith(keyword)); return(View(data)); }
public ActionResult Create(FormCollection collection) { try { var db = new FabricsEntities(); var product = new Product(); product.ProductName = collection["ProductName"]; product.Price = Convert.ToDecimal(collection["Price"]); product.Stock = Convert.ToDecimal(collection["Stock"]); product.Active = true; db.Product.Add(product); db.SaveChanges(); // TODO: Add insert logic here return(RedirectToAction("Index")); } catch { return(View()); } }
// GET: CRUD/Delete/5 public ActionResult Delete(int id) { var db = new FabricsEntities(); //找到要刪除的id var client = db.Client.Find(id); //foreach先找到這資料表最後一個關聯性先找最後一筆做刪除 foreach (var order in client.Order.ToList()) { //找到order的關聯orderLine做刪除 db.OrderLine.RemoveRange(order.OrderLine); } //再將order中與這個client有關連到的做移除 db.Order.RemoveRange(client.Order.ToList()); //將選擇的id做移除 db.Client.Remove(client); //做交易處理正式嘗試移除 db.SaveChanges(); //return View(); return(RedirectToAction("Index")); }
public ProductRepository() { this.db = new FabricsEntities(); db.Configuration.LazyLoadingEnabled = false; }
static void Main(string[] args) { //CreateSampleData(); //for (int i = 0; i < 100; i++) //{ using (var fabrics = new FabricsEntities()) { using (var nw = new northwindEntities()) { var fabricProducts = from fp in fabrics.Products select fp; var nwCategoriesList = (from c in nw.Categories select c).ToList(); using (var ngmd = new ProductsContext()) { var rnd = new Random(); foreach (var product in fabricProducts) { var imageNumber = rnd.Next(0, 16); var ngArticle = new Article { Id = Guid.NewGuid(), Name = product.ProductName, Code = product.Price.ToString(), Description = "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.", ImageUrl = String.Format("{0}.jpg", imageNumber) }; Category cat; var catRnd = new Random(); var productCat = nwCategoriesList[catRnd.Next(0, 8)]; var productCatId = productCat.CategoryID; if (categoryStore.ContainsKey(productCatId)) { cat = categoryStore[productCatId]; ngmd.Entry(cat).State = EntityState.Unchanged; } else { var guid = Guid.NewGuid(); cat = new Category { Name = productCat.CategoryName, Description = productCat.Description, Id = guid }; categoryStore.Add(productCatId, cat); ngmd.Categories.Add(cat); ngmd.SaveChanges(); } ngArticle.Category = cat; ngmd.Articles.Add(ngArticle); ngmd.SaveChanges(); } } } //} } }