static void Main(string[] args) { try { Debug.Initialize(); ISerializationSettings settings = SerializationContext.Default.GetService<ISerializationSettings>(); settings.ParsingMode = ParsingModeType.Loose; settings.EnsureAccurateLineNumbers = true; settings.StoreExtraSerializationData = true; _Arguments = new CommandLineArgumentList(args, StringComparison.CurrentCultureIgnoreCase); IXmlDocumentProvider docProvider = null; // Initialize our xml document provider if (File.Exists("icalvalidSchema.zip")) docProvider = new ZipXmlDocumentProvider("icalvalidSchema.zip"); else if (Directory.Exists("icalvalidSchema")) docProvider = new DirectoryXmlDocumentProvider("icalvalidSchema"); else throw new Exception("A valid schema directory or zip file could not be located!"); IValidationRuleset selectedRuleset = null; try { // Setup the language to use for validation/tests SetupLanguage(docProvider); selectedRuleset = LoadRuleset(docProvider); } catch (ValidationRuleLoadException ex) { _ValidationRuleLoadException = ex; } if (_Arguments.Contains(_SchemaValidationArgument)) { SchemaTest(docProvider); LanguageKeyValidation(docProvider); } else if (_ValidationRuleLoadException == null) { // Determine whether we are performing a self test, or // validating an iCalendar file... if (_Arguments.Contains(_TestArgument)) { SelfTest(docProvider, selectedRuleset); } else { ValidateFile(docProvider, selectedRuleset); } } else { Console.WriteLine("The icalvalid schema did not load successfully: " + _ValidationRuleLoadException.Message + Environment.NewLine + Environment.NewLine + "Try 'icalvalid /s' for more information."); } } catch (Exception ex) { Console.WriteLine(ex.Message); } }
static void Main(string[] args) { try { Debug.Initialize(); // Adjust default serialization settings ISerializationSettings settings = SerializationContext.Default.GetService<ISerializationSettings>(); settings.ParsingMode = ParsingModeType.Loose; settings.EnsureAccurateLineNumbers = true; settings.StoreExtraSerializationData = true; for (int i = 0; i < 10000; i++) { IXmlDocumentProvider docProvider = null; // Initialize our xml document provider if (File.Exists("icalvalidSchema.zip")) docProvider = new ZipXmlDocumentProvider("icalvalidSchema.zip"); else if (Directory.Exists("icalvalidSchema")) docProvider = new DirectoryXmlDocumentProvider("icalvalidSchema"); else throw new Exception("A valid schema directory or zip file could not be located!"); IValidationRuleset selectedRuleset = null; // Setup the language to use for validation/tests SetupLanguage(docProvider); selectedRuleset = LoadRuleset(docProvider); ValidateFile(@"Calendars\Test1.ics", docProvider, selectedRuleset); ValidateFile(@"Calendars\Test2.ics", docProvider, selectedRuleset); ValidateFile(@"Calendars\Test3.ics", docProvider, selectedRuleset); } } catch (Exception ex) { Console.WriteLine(ex.Message); } }