public virtual bool Save(ZOperationResult operationResult) { try { Context.SaveChanges(); } catch (DbEntityValidationException exception) { foreach (DbEntityValidationResult validationErrors in exception.EntityValidationErrors) { foreach (DbValidationError validationError in validationErrors.ValidationErrors) { operationResult.AddOperationError("", validationError.ErrorMessage, new List <string>() { validationError.PropertyName }); } } } catch (Exception exception) { operationResult.ParseExceptionEntityFramework(exception); } return(operationResult.Ok); }
public static void ParseExceptionEntityFramework(this ZOperationResult operationResult, Exception exception) { //System.Data.EntityException // System.Data.EntityCommandCompilationException // System.Data.EntityCommandExecutionException // System.Data.EntitySqlException // System.Data.MappingException // System.Data.MetadataException // System.Data.ProviderIncompatibleException //System.Data.DataException // System.Data.Entity.Validation.DbEntityValidationException // System.Data.Entity.Validation.DbUnexpectedValidationException if (exception is DbEntityValidationException) { operationResult.ErrorMessage = exception.Message; foreach (DbEntityValidationResult validationResult in (exception as DbEntityValidationException).EntityValidationErrors) { foreach (DbValidationError validationError in validationResult.ValidationErrors) { operationResult.AddOperationError("", validationError.ErrorMessage, new List <string> { validationError.PropertyName }); } } } else { operationResult.ParseException(exception); } }
public static void ParseIdentityResult(this ZOperationResult operationResult, IdentityResult identityResult) { if (!identityResult.Succeeded) { foreach (string error in identityResult.Errors) { operationResult.AddOperationError("", error); } } }
public static bool IsDelete(ZIsSecurityOperations isSecurityOperations, ZOperationResult operationResult) { bool result = true; if (!isSecurityOperations.IsDelete) { result = false; operationResult.AddOperationError("", MessageNotAuthorized(isSecurityOperations.Activity, ZSecurityOperations.Delete)); } return(result); }
public System.Web.Http.IHttpActionResult AuthorizeActivity() { ZOperationResult operationResult = new ZOperationResult(); ISecurityManager securityManager = System.Web.Mvc.DependencyResolver.Current.GetService <ISecurityManager>(); string activity = ActivityHelper.TaskActivity(AppDefaults.Domain, "AuthorizeActivity"); if (!securityManager.IsAuthorized(activity, ZSecurityOperations.Execute)) { operationResult.AddOperationError("", SecurityHelper.MessageNotAuthorized(activity, ZSecurityOperations.Execute)); } return(new OperationResultActionResult(Request, operationResult)); }
public static void ParseExceptionNHibernate(this ZOperationResult operationResult, Exception exception) { //NHibernate.ADOException //NHibernate.CallbackException //NHibernate.HibernateException //NHibernate.InstantiationException //NHibernate.LazyInitializationException //NHibernate.MappingException //NHibernate.NonUniqueObjectException //NHibernate.NonUniqueResultException //NHibernate.ObjectDeletedException //NHibernate.ObjectNotFoundException //NHibernate.PersistentObjectException //NHibernate.PropertyAccessException //NHibernate.PropertyNotFoundException //NHibernate.PropertyValueException //NHibernate.QueryParameterException //NHibernate.SessionException //NHibernate.StaleObjectStateException //NHibernate.StaleStateException //NHibernate.TransactionException //NHibernate.TransientObjectException //NHibernate.TypeMismatchException //NHibernate.UnresolvableObjectException //NHibernate.WrongClassException if (exception is MappingException) { operationResult.ErrorMessage = exception.Message; foreach (KeyValuePair <string, object> keyValue in (exception as MappingException).Data) { operationResult.AddOperationError("", "Mapping Exception: " + keyValue.Value.ToString(), new List <string> { keyValue.Key }); } } else { operationResult.ParseException(exception); } }
private static void Demo() { bool exit = false; while (!exit) { Console.Clear(); Console.WriteLine("Demo\n"); Console.WriteLine("<0> RETURN"); Console.WriteLine("<1> DI Demo"); Console.WriteLine("<2> e-mail Demo"); Console.WriteLine("<3> Environment Application Demo"); Console.WriteLine("<4> Environment Session Demo"); Console.WriteLine("<5> Multi-Tenant Demo"); Console.WriteLine("<6> Log Demo"); Console.WriteLine("<7> ZOperationResult Serialization"); Console.Write("\nChoose an option... "); ConsoleKeyInfo key = Console.ReadKey(); Console.WriteLine(); switch (key.KeyChar) // <ENTER> = '\r' { case ('0'): exit = true; break; case ('1'): DemoDI(); break; case ('2'): DemoEMail(); break; case ('3'): DemoEnvironmentApplication(); break; case ('4'): DemoEnvironmentSession(); break; case ('5'): DemoMultiTenant(); break; case ('6'): DemoLog(); break; case ('7'): ZOperationResult operationResult = new ZOperationResult(); operationResult.InformationCode = "1"; operationResult.InformationMessage = "Information"; operationResult.WarningCode = "2"; operationResult.WarningMessage = "Warning"; operationResult.ErrorCode = "3"; operationResult.ErrorMessage = "Error"; operationResult.Data = "123"; operationResult.AddOperationInformation("11", "Information"); operationResult.AddOperationWarning("22", "Warning"); operationResult.AddOperationError("33", "Error"); operationResult.ParseException(new Exception("Exception")); string json = JsonConvert.SerializeObject(operationResult); operationResult = JsonConvert.DeserializeObject <ZOperationResult>(json); int i = operationResult.Data.ToInt32(); WriteObject(operationResult); break; } if (!exit) { Console.Write("\nPress <KEY> to continue... "); Console.ReadKey(); } } }