|
This Blog Has Been Moved !This Blog Has been moved to http://aleemkhan.wordpress.com This is extremely trivial XML Schema Validator; I just needed to verify my XML against a Schema File. Very simple code but maybe helpful to someone. using System; using System.Xml; using System.IO; using System.Xml.Schema; namespace XmlConsole { /// <summary> /// Summary description for Class1. /// </summary> class Class1 { private static int errors = 0; /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void { try { // The Source XML File XmlTextReader xtr = new XmlTextReader("C:\\devresult.xml"); XmlValidatingReader reader = new XmlValidatingReader(xtr); reader.ValidationType = ValidationType.Schema; // The Path of the XML Schema File against which the Validation is to be made. // you can add more than one Files by using reader.Schemas.Add() reader.Schemas.Add(null,new XmlTextReader(@"E:\Schema.xsd")); reader.ValidationEventHandler += new ValidationEventHandler(reader_ValidationEventHandler); while(reader.Read()); xtr.Close(); reader.Close(); if(errors == 0) System.Console.WriteLine("Validation Successfull"); else System.Console.WriteLine("Validation Failed"); System.Console.ReadLine(); } catch(Exception exp) { System.Console.WriteLine(exp.Message); errors ++; } } private static void reader_ValidationEventHandler(object sender, ValidationEventArgs e) { System.Console.WriteLine(e.Message); } } } Ok, again posting after a long time. Predict the output of the following code, the contains 3 sets of function calls, each set contains one call by value and one by reference, but the object being passed everytime is a reference type. It is recommended that you do not run the code, just predict the output. StringBuilder used in the code is a class and is a reference type. Also explain your answers. class Class1 { static void { StringBuilder str; // Set 1 str = new StringBuilder("Types"); CrazyFunction1(str); Console.WriteLine(str.ToString()); str = new StringBuilder("Types"); CrazyFunction2(ref str); Console.WriteLine(str.ToString()); // Set 2 str = new StringBuilder("Types"); CrazyFunction3(str); Console.WriteLine(str.ToString()); str = new StringBuilder("Types"); CrazyFunction4(ref str); Console.WriteLine(str.ToString()); //Set 3 str = new StringBuilder("Types"); CrazyFunction5(str); Console.WriteLine(str.ToString()); str = new StringBuilder("Types"); CrazyFunction6(ref str); Console.WriteLine(str.ToString()); Console.ReadLine(); } private static void CrazyFunction1(StringBuilder x) { x = null; } private static void CrazyFunction2(ref StringBuilder x) { x = null; } private static void CrazyFunction3(StringBuilder x) { x.Append(" are crazy"); } private static void CrazyFunction4(ref StringBuilder x) { x.Append(" are crazy"); } private static void CrazyFunction5(StringBuilder x) { x = new StringBuilder("crazy"); } private static void CrazyFunction6(ref StringBuilder x) { x = new StringBuilder("crazy"); } } |