private void CheckNodeType(string path) { //<snippet12> DataContractSerializer ser = new DataContractSerializer(typeof(Person), "Customer", @"http://www.contoso.com"); FileStream fs = new FileStream(path, FileMode.Open); XmlDictionaryReader reader = XmlDictionaryReader.CreateTextReader(fs, new XmlDictionaryReaderQuotas()); while (reader.Read()) { switch (reader.NodeType) { case XmlNodeType.Element: if (ser.IsStartObject(reader)) { Console.WriteLine("Found the element"); Person p = (Person)ser.ReadObject(reader); Console.WriteLine("{0} {1} id:{2}", p.Name, p.Address); } Console.WriteLine(reader.Name); break; } } //</snippet12> }
//</snippet5> //<snippet6> public static void ReadObjectData(string path) { // Create the reader. FileStream fs = new FileStream(path, FileMode.Open); XmlDictionaryReader reader = XmlDictionaryReader.CreateTextReader(fs, new XmlDictionaryReaderQuotas()); // Create the DataContractSerializer specifying the type, // root and namespace to use. The root value corresponds // to the DataContract.Name value, and the namespace value // corresponds to the DataContract.Namespace value. DataContractSerializer ser = new DataContractSerializer(typeof(Person), "Customer", @"http://www.contoso.com"); // Test if the serializer is on the start of the // object data. If so, read the data and write it // to the console. while (reader.Read()) { if (ser.IsStartObject(reader)) { Console.WriteLine("Found the element"); Person p = (Person)ser.ReadObject(reader); Console.WriteLine("{0} {1} id:{2}", p.FirstName, p.LastName, p.ID); } Console.WriteLine(reader.Name); break; } fs.Flush(); fs.Close(); }
public static Iori FromXmlStream(this Iori iori, string rootElement, Stream source) { var reader = XmlDictionaryReader.CreateTextReader(source, XmlDictionaryReaderQuotas.Max); var serializer = new DataContractSerializer(typeof(Iori)); reader.ReadStartElement(rootElement); while (serializer.IsStartObject(reader)) { iori.FromIori(serializer.ReadObject(reader) as Iori); } return(iori); }
public static Statistics Load() { Statistics statistics = null; try { // TODO : This is not to be used for this release -- still some pondering to do. return(new Statistics()); DataContractSerializer serializer = new DataContractSerializer(typeof(Statistics), new Type[] { }); using (FileStream fs = new FileStream(Statistics.Filename, FileMode.Open)) { using (XmlDictionaryReader reader = XmlDictionaryReader.CreateTextReader(fs, new XmlDictionaryReaderQuotas())) { while (reader.Read()) { switch (reader.NodeType) { case XmlNodeType.Element: if (serializer.IsStartObject(reader)) { statistics = (Statistics)serializer.ReadObject(reader); } break; } } } } //using (StreamWriter swStatistics = new StreamWriter(Statistics.Filename)) //{ // using (XmlTextWriter writer = new XmlTextWriter(swStatistics)) // { // writer.Formatting = Formatting.Indented; // serializer.WriteObject(writer, this); // writer.Flush(); // } //} //XmlSerializer mySerializer = new XmlSerializer(typeof(Statistics), new Type[] { }); //FileStream myFileStream = new FileStream(Statistics.Filename, FileMode.Open); //statistics = (Statistics)mySerializer.Deserialize(myFileStream); } catch { statistics = new Statistics(); } return(statistics); }
private Message deserializeFromFirstXMLelement(ref MemoryStream memStream) { Message msg = null; byte[] bMessage = memStream.ToArray(); XmlDictionaryReader xmlDictReader = XmlDictionaryReader.CreateTextReader(bMessage, 0, bMessage.Length, new XmlDictionaryReaderQuotas()); while (xmlDictReader.Read()) { switch (xmlDictReader.NodeType) { case XmlNodeType.Element: if (serializer.IsStartObject(xmlDictReader)) { Console.WriteLine("Found start element"); msg = (Message)serializer.ReadObject(xmlDictReader); } Console.WriteLine(xmlDictReader.Name); break; } } return(msg); }
public void TestDataContractSerializer() { var sourceGraph = ModelHelper.GetSourceGraph <EntityProgrammingLanguageFactory>(1); var thingGraph = sourceGraph.Source as IThingGraph; var s = new MemoryStream(); var settings = new XmlWriterSettings(); settings.OmitXmlDeclaration = true; settings.ConformanceLevel = ConformanceLevel.Fragment; var writer = //System.Runtime.Serialization.Json.JsonReaderWriterFactory.CreateJsonWriter (s); XmlDictionaryWriter.CreateBinaryWriter(s); //XmlDictionaryWriter.CreateDictionaryWriter (XmlWriter.Create (s, settings)); writer.WriteStartElement("root"); var ser = new DataContractSerializer(factory.Clazz <IThing>(), factory.KnownClasses); int thingCount = 0; foreach (var thing in thingGraph) { //ser.WriteStartObject (writer, thing); //ser.WriteObjectContent (writer, thing); ser.WriteObject(writer, thing); thingCount++; } writer.WriteEndElement(); writer.Flush(); s.Position = 0; //StreamReader reader = new StreamReader (s); //this.ReportDetail(reader.ReadToEnd ()); this.ReportDetail(string.Format("Stream.Length={0}", s.Length)); this.ReportDetail(string.Format("Thing.Count={0}", thingCount)); s.Position = 0; thingCount = 0; var xreader = //System.Runtime.Serialization.Json.JsonReaderWriterFactory.CreateJsonReader (s,XmlDictionaryReaderQuotas.Max); XmlDictionaryReader.CreateBinaryReader(s, XmlDictionaryReaderQuotas.Max); //XmlDictionaryReader.CreateTextReader(s, XmlDictionaryReaderQuotas.Max); xreader.ReadStartElement(); while (ser.IsStartObject(xreader)) { IThing thing = ser.ReadObject(xreader) as IThing; thingCount++; } this.ReportDetail(string.Format("Thing.Count={0}", thingCount)); }
public override bool IsStartObject(XmlDictionaryReader reader) { return(_serializer.IsStartObject(_createReader(reader))); }
public override bool IsStartObject(XmlDictionaryReader reader) { return(dataContractSerializer.IsStartObject(reader)); }
public override bool IsStartObject(XmlDictionaryReader reader) { return(_serializer.IsStartObject(new SecurePayXmlDictionaryReader(reader))); }