public ActionResult Edit(int id = 0)
 {
     using (var db = new XkSystem.Models.DbContext())
     {
         var vm = new Models.StudyCost.Edit();
         vm.TeacherList = Teacher.Controllers.TeacherController.SelectList();
         if (id != 0)
         {
             var tb = (from p in db.Table <Study.Entity.tbStudyCost>()
                       where p.Id == id
                       select new Dto.StudyCost.Edit
             {
                 Id = p.Id,
                 No = p.No,
                 TeacherId = p.tbTeacher.Id,
                 Cost = p.Cost
             }).FirstOrDefault();
             if (tb != null)
             {
                 vm.StudyCostEdit = tb;
             }
         }
         return(View(vm));
     }
 }
        public ActionResult Edit(Models.StudyCost.Edit vm)
        {
            using (var db = new XkSystem.Models.DbContext())
            {
                var error = new List <string>();
                if (error.Count == decimal.Zero)
                {
                    if (vm.StudyCostEdit.Id == 0)
                    {
                        var check = (from p in db.Table <Study.Entity.tbStudyCost>()
                                     where p.tbTeacher.Id == vm.StudyCostEdit.TeacherId
                                     select p).FirstOrDefault();
                        if (check == null)
                        {
                            var tb = new Study.Entity.tbStudyCost();
                            tb.No = vm.StudyCostEdit.No == null?db.Table <Study.Entity.tbStudyCost>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.StudyCostEdit.No;

                            tb.tbTeacher = db.Set <Teacher.Entity.tbTeacher>().Find(vm.StudyCostEdit.TeacherId);
                            tb.Cost      = Convert.ToDecimal(vm.StudyCostEdit.Cost);
                            db.Set <Study.Entity.tbStudyCost>().Add(tb);
                        }
                        else
                        {
                            check.Cost = Convert.ToDecimal(vm.StudyCostEdit.Cost);
                        }
                        if (db.SaveChanges() > 0)
                        {
                            XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("添加费用设置");
                        }
                    }
                    else
                    {
                        var tb = (from p in db.Table <Study.Entity.tbStudyCost>()
                                  where p.Id == vm.StudyCostEdit.Id
                                  select p).FirstOrDefault();
                        if (tb != null)
                        {
                            tb.No = vm.StudyCostEdit.No == null?db.Table <Study.Entity.tbStudyCost>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.StudyCostEdit.No;

                            tb.tbTeacher = db.Set <Teacher.Entity.tbTeacher>().Find(vm.StudyCostEdit.TeacherId);
                            tb.Cost      = Convert.ToDecimal(vm.StudyCostEdit.Cost);
                            if (db.SaveChanges() > 0)
                            {
                                XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("修改费用设置");
                            }
                        }
                        else
                        {
                            error.AddError(Resources.LocalizedText.MsgNotFound);
                        }
                    }
                }
                return(Code.MvcHelper.Post(error, Url.Action("List")));
            }
        }