Use XmlSerializer : Xml Serialization « XML « C# / C Sharp

Home
C# / C Sharp
1.2D Graphics
2.Class Interface
3.Collections Data Structure
4.Components
5.Data Types
6.Database ADO.net
7.Date Time
8.Design Patterns
9.Development Class
10.Event
11.File Stream
12.Generics
13.GUI Windows Form
14.Internationalization I18N
15.Language Basics
16.LINQ
17.Network
18.Office
19.Reflection
20.Regular Expressions
21.Security
22.Services Event
23.Thread
24.Web Services
25.Windows
26.Windows Presentation Foundation
27.XML
28.XML LINQ
C# Book
C# / C Sharp by API
C# / CSharp Tutorial
C# / CSharp Open Source
C# / C Sharp » XML » Xml SerializationScreenshots 
Use XmlSerializer
  



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Xml;
using System.Xml.Serialization;

public class MainClass {      //new products object
    public static void Main() {
        Product newPd;
        FileStream f = new FileStream("serialprod.xml", FileMode.Open);
        XmlSerializer newSr = new XmlSerializer(typeof(Product));
        newPd = (Product)newSr.Deserialize(f);
        f.Close();
    }
}
[System.Xml.Serialization.XmlRootAttribute()]
public class Product {
    private int prodId;
    private string prodName;
    private int suppId;
    private int catId;
    private string qtyPerUnit;
    private Decimal unitPrice;
    private short unitsInStock;
    private short unitsOnOrder;
    private short reorderLvl;
    private bool discont;
    private int disc;

    [XmlAttributeAttribute(AttributeName = "Discount")]
    public int Discount {
        get return disc; }
        set disc = value; }
    }

    [XmlElementAttribute()]
    public int ProductID {
        get return prodId; }
        set prodId = value; }
    }
    [XmlElementAttribute()]
    public string ProductName {
        get return prodName; }
        set prodName = value; }
    }
    [XmlElementAttribute()]
    public int SupplierID {
        get return suppId; }
        set suppId = value; }
    }

    [XmlElementAttribute()]
    public int CategoryID {
        get return catId; }
        set catId = value; }
    }

    [XmlElementAttribute()]
    public string QuantityPerUnit {
        get return qtyPerUnit; }
        set qtyPerUnit = value; }
    }

    [XmlElementAttribute()]
    public Decimal UnitPrice {
        get return unitPrice; }
        set unitPrice = value; }
    }

    [XmlElementAttribute()]
    public short UnitsInStock {
        get return unitsInStock; }
        set unitsInStock = value; }
    }

    [XmlElementAttribute()]
    public short UnitsOnOrder {
        get return unitsOnOrder; }
        set unitsOnOrder = value; }
    }

    [XmlElementAttribute()]
    public short ReorderLevel {
        get return reorderLvl; }
        set reorderLvl = value; }
    }

    [XmlElementAttribute()]
    public bool Discontinued {
        get return discont; }
        set discont = value; }
    }

}


public class Inventory {

    private Product[] stuff;
    public Inventory() { }
    [XmlArrayItem("Prod", typeof(Product)),
    XmlArrayItem("Book", typeof(BookProduct))]

    public Product[] InventoryItems {
        get return stuff; }
        set stuff = value; }
    }

}

public class BookProduct : Product {
    private string isbnNum;

    public BookProduct() { }

    public string ISBN {
        get return isbnNum; }
        set isbnNum = value; }
    }

}

           
         
    
  
Related examples in the same category
1.Serialize List of Objects
2.Set Xml Attribute when serilzation
3.Use XML Serialization with Custom Objects
4.XmlRootAttribute
5.Takes an XML file and exports the Object it holds
6.Converts an XML string to an object
7.Deserializes/Serializes an xml document back into an object
8.Deserialize with XmlSerializer
9.XmlSerializer Util
10.Serilize to Xml
11.Xml Serialization Helper
12.Xml Serialization Helper 2
13.Tiny Xml Serializer
14.Xml Serialization Manager
java2s.com  |  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.