Mega Code Archive

 
Categories / C# / XML
 

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; }     } }