XML Serialization of Plain CLR object without using XMLSerializer attribute

My last article was about converting the Objects to XML using XMLAttribute .Here i am trying to show How to convert a object to XML fromat which does not have any attribute.

Following snippet demonstrate it clearly _

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Xml.Serialization;
using System.Xml;
namespace XMLSerlizer
    class Program
        static void Main(string[] args)
            List<Vehicle> lstVeh = new List<Vehicle>();
            Vehicle v = new Vehicle();
            v.id = 1;
            v.Name = "ZXen";
            v.company = "Maruti";
            Vehicle v1 = new Vehicle();
            v1.id = 1;
            v1.Name = "Fabia";
            v1.company = "Scoda";
        public static void  SerializeObject<T>(T obj)
                XmlSerializer xs = new XmlSerializer(typeof(T));
                XmlWriter wrt = XmlWriter.Create(@"c:\temp.xml");
                xs.Serialize(wrt, obj);
    public class Vehicle
        public int id;
        public string Name;
        public string company;