FineUI 官方论坛

标题: 【真棒】重用Create页和Edit页心得 [打印本页]

作者: capfhz    时间: 2017-1-4 22:16
标题: 【真棒】重用Create页和Edit页心得
首先,感谢三师兄,为社区提供了一个新年礼物。
其次,我是一个大懒鬼,看了三师兄和黑冰的MVC教程,对Create和Edit都是单独的页面,我在三师兄的FineUIMvc.QuickStart项目中,改造了下,把Create和Edit重用,各位高手见笑了。
        public ActionResult Edit(int? studentId)
        {
            Student student = studentId == null ? new Student() : db.Students.Find(studentId);
            return View(student);
        }

把实体为空,跳到错误页的代码干了,11650.zhifeng521兄弟说,永远也执行不到那行代码,
        function onCreateClick(event) {
            F.ui.Window1.show('@Url.Content("~/Students/Edit")', '新增用户');
        }
把新增按钮的Url跳转到Edit上,
public ActionResult btnEdit_Click([Bind(Include = "ID,Name,Gender,Major,EntranceDate")] Student student)
        {
            if (ModelState.IsValid)
            {
                if (student.ID == 0)
                {
                    db.Students.Add(student);
                    
                }
                else
                {
                    db.Entry(student).State = EntityState.Modified;                    
                }
                db.SaveChanges();

                // 关闭本窗体(触发窗体的关闭事件)
                PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
            }
            return UIHelper.Result();
        }
保存代码。
我不是一个专业撸码的,


作者: sanshi    时间: 2017-1-4 23:16
太好了,给我很大的启发,其实两者的区别不大,有很多代码都是一样的

-----------------
不过分开也有好处,两者后台逻辑独立,不用写一些条件判断,比如在View中会有一个显示文本不同(编辑、新建....)


作者: capfhz    时间: 2017-1-5 09:07
sanshi 发表于 2017-1-4 23:16
太好了,给我很大的启发,其实两者的区别不大,有很多代码都是一样的。我会尝试在AppBoxMvc把Edit和New放 ...

能得到三师兄的关注,我的小心脏啊,太高兴了,




欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/) Powered by Discuz! X3.4