private ActionResult Merge <TEntity, KService>(int?key) where TEntity : class, new() where KService : ISimpleService <TEntity>, new() { SimpleMergeVModel <TEntity> vModel = new SimpleMergeVModel <TEntity>(); vModel.Url = Request.UrlReferrer.ToString(); if (key.HasValue) { var service = new KService(); vModel.Entity = service.GetEntity(key.Value); } else { vModel.Entity = new TEntity(); } return(View(vModel)); }
private ActionResult Merge <TEntity, KService>(SimpleMergeVModel <TEntity> vModel) where TEntity : class where KService : ISimpleService <TEntity>, new() { if (ModelState.IsValid) { try { var service = new KService(); service.Merge(vModel.Entity); return(Redirect(vModel.Url)); } catch (ApplicationException ex) { ModelState.AddModelError("EmpEntity.Username", ex.Message); } } return(View(vModel)); }