Set Xml Attribute when serilzation : 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.Design Patterns
8.Development Class
9.Event
10.File Stream
11.Generics
12.GUI Windows Form
13.Language Basics
14.LINQ
15.Network
16.Office
17.Reflection
18.Regular Expressions
19.Security
20.Services Event
21.Thread
22.Web Services
23.Windows
24.Windows Presentation Foundation
25.XML
26.XML LINQ
C# / C Sharp by API
C# / CSharp Tutorial
C# / CSharp Open Source
C# / C Sharp » XML » Xml SerializationScreenshots 
Set Xml Attribute when serilzation
 


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 {
    public static void Main() {
        Product pd = new Product();
        pd.ProductID = 200;
        pd.CategoryID = 100;
        pd.Discontinued = false;
        pd.ProductName = "Serialize Objects";
        pd.QuantityPerUnit = "6";
        pd.ReorderLevel = 1;
        pd.SupplierID = 1;
        pd.UnitPrice = 1000;
        pd.UnitsInStock = 10;
        pd.UnitsOnOrder = 0;
        TextWriter tr = new StreamWriter("serialprod.xml");
        XmlSerializer sr = new XmlSerializer(typeof(Product));
        sr.Serialize(tr, pd);
        tr.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;

    //added the Discount attribute
    [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.Use XmlSerializer
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
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.