public ActionResult Create(Operation model) { if (model == null) throw new ArgumentNullException("the operation is null!!!"); model.Save(); TempData["HintMessage"] = new HintMessage { Content = String.Format("添加({0})操作成功!", model.Name) }; return RedirectToAction("Index"); }
//数据持久化 internal static void SaveToDb(OperationInfo pOperationInfo, Operation pOperation,bool pIsNew) { pOperation.OperationId = pOperationInfo.operationId; pOperation.OperationName = pOperationInfo.operationName; pOperation.IsNew=pIsNew; string UserName = SubsonicHelper.GetUserName(); try { pOperation.Save(UserName); } catch(Exception ex) { LogManager.getInstance().getLogger(typeof(OperationInfo)).Error(ex); if(ex.Message.Contains("插入重复键"))//违反了唯一键 { throw new AppException("此对象已经存在");//此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示 } throw new AppException("保存失败"); } pOperationInfo.operationId = pOperation.OperationId; //如果缓存存在,更新缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(OperationInfo))) { ResetCache(); } }