public static IAppBuilder UsePassiveValidator(this IAppBuilder builder) { IList <string> warnings = new List <string>(); if (!PassiveValidator.TryValidateProperties(builder.Properties, warnings)) { throw new InvalidOperationException(warnings.Aggregate("builder.Properties are invalid", (a, b) => a + "\r\n" + b)); } if (warnings.Count != 0) { var builderProperties = new BuilderProperties(builder.Properties); var output = builderProperties.TraceOutput ?? Console.Out; output.WriteLine(warnings.Aggregate("builder.Properties are invalid", (a, b) => a + "\r\n" + b)); } return(builder.UseType <PassiveValidator>()); }