Serializar ArrayList of Objects

Tengo un ArrayList que almacena un objeto personalizado. Quiero serializar ese ArrayList a una cadena para poder guardarlo dentro de la configuración de la aplicación.

Esta pregunta busca resolverlo, pero está en java. Y no soy inteligente con XML, entonces, ¿alguien podría ayudar?Serializar un tipo de objeto ArrayList of Date

Tengo mi configuración ArrayList:

...
MyObject tempObj = new MyObject("something",1,"something");
MyCollection.Add(tempObj);
...

Y originalmente tuve esto. Da salida a la cadena, pero el objeto no está allí:

    private string SerializeArrayList(ArrayList obj)
    {
            System.Xml.XmlDocument doc = new XmlDocument();
            Type[] extraTypes = new Type[1];
            extraTypes[0] = typeof(MyObject);
            System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(typeof(ArrayList), extraTypes);
            System.IO.MemoryStream stream = new System.IO.MemoryStream();
            try
            {
                serializer.Serialize(stream, obj);
                stream.Position = 0;
                doc.Load(stream);
                return doc.InnerXml;
            }
            catch { throw; }
            finally
            {
                stream.Close();
                stream.Dispose();
            }
}

EDITAR: solicitud de código

    public class MyObject
    {
        private string eN;      
        private Boolean bE;          
        private int min;         
        private Boolean bot;       
        private string onE;         


        public MyObject(string na, Boolean b)
        {
          ...
        }


        public MyObject()
        {
        }

        public string GetSomething()
        {
            ...

Respuestas a la pregunta(2)

Su respuesta a la pregunta