コード例 #1
0
 public ActionResult Edit([Bind(Include = "Id,Name,Category,CreateDate")] Product product)
 {
     if (ModelState.IsValid)
     {
         db.Entry(product).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.Category = new SelectList(db.Categories, "Id", "Name", product.Category);
     return(View(product));
 }
コード例 #2
0
        public async Task <ActionResult> Edit([Bind(Include = "Id,Name")] Category category)
        {
            if (ModelState.IsValid)
            {
                db.Entry(category).State = EntityState.Modified;
                await db.SaveChangesAsync();

                await RedisLib.DeleteCache("Categories");

                return(RedirectToAction("Index"));
            }
            return(View(category));
        }
コード例 #3
0
        //【2】显示加载(就是我们关闭延迟加载后,如果需要再次加载,可以使用)
        private static void ExplicitLoading()
        {
            using (EFDBEntities db = new EFDBEntities())
            {
                db.Database.Log = Console.WriteLine;

                //关闭延迟加载
                db.Configuration.LazyLoadingEnabled = false;

                var student = db.Students.FirstOrDefault();

                //对于已经关闭的延迟加载,我们可以再次手动开启
                db.Entry(student).Reference(s => s.StudentClass).Load();

                //以下就会出错
                var className = student.StudentClass.ClassName;
            }

            Console.Read();
        }
コード例 #4
0
 public virtual void Update(TEntity entity)
 {
     _dbSet.Attach(entity);
     _dbContext.Entry(entity).State = EntityState.Modified;
 }