Vicomi

================= StudentForm Class ============
[Serializable()]
    public class StudentForm
    {
        public string form_id { get; set; }
        public string form_name { get; set; }
        public List<ElementProperty> elementProperty_ { get; set; }

      //  public StudentForm()
      //  {
      //      elementProperty_ = new List();
      //  }
       public StudentForm()
        {
            elementProperty_ = new List<   ElementProperty    >();
        }
     
    }

==================ElementProperty Class===========================

public class ElementProperty
    {
        public string element_id { get; set; }
        public string element_name { get; set; }
    }

============ DataManager Class ====================

class DataManager
    {
        public string guidGenerator()
        {
            Guid g = Guid.NewGuid();
            return Guid.NewGuid().ToString() ;
        }

        public void addItemsToList(ListBox lb, string ele)
        {
            lb.Items.Add(ele);
        }

        public void SerializeObject(T serializableObject, string fileName)
        {
            XmlDocument xmlDocument = new XmlDocument();
            XmlSerializer serializer = new XmlSerializer(serializableObject.GetType());
            using (MemoryStream stream = new MemoryStream())
            {
                serializer.Serialize(stream, serializableObject);
                stream.Position = 0;
                xmlDocument.Load(stream);
                xmlDocument.Save(fileName);
                stream.Close();
            }
        }

   
        public T DeSerializeObject(string fileName)
        {
            if (string.IsNullOrEmpty(fileName)) { return default(T); }

            T objectOut = default(T);

            try
            {
                string attributeXml = string.Empty;

                XmlDocument xmlDocument = new XmlDocument();
                xmlDocument.Load(fileName);
                string xmlString = xmlDocument.OuterXml;

                using (StringReader read = new StringReader(xmlString))
                {
                    Type outType = typeof(T);

                    XmlSerializer serializer = new XmlSerializer(outType);
                    using (XmlReader reader = new XmlTextReader(read))
                    {
                        objectOut = (T)serializer.Deserialize(reader);
                     
                        reader.Close();
                    }

                    read.Close();
                }
            }
            catch (Exception ex)
            {
                //Log exception here
            }

            return objectOut;
        }
    }

======================= Form.CS =====================

public partial class Form1 : Form
    {
        StudentForm student1 = new StudentForm();

        public Form1()
        {
            InitializeComponent();
        }

        private void btnAdd_Click(object sender, EventArgs e)
        {
            try
            {

                ElementProperty element1 = new ElementProperty();
                DataManager dataManager = new DataManager();
             
                element1.element_id = dataManager.guidGenerator();
                element1.element_name = textBox3.Text;
                student1.elementProperty_.Add(element1);

                student1.form_id = textBox1.Text;
                student1.form_name = textBox2.Text;

                dataManager.addItemsToList(listBox1, element1.element_name);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }

        }

        private void btnSave_Click(object sender, EventArgs e)
        {
            //---------------

            SaveFileDialog saveFileDialog1 = new SaveFileDialog();
            saveFileDialog1.InitialDirectory = Convert.ToString(Environment.SpecialFolder.MyDocuments);
            saveFileDialog1.Filter = "Your extension here (*.EXT)|*.ext|All Files (*.*)|*.*";
            saveFileDialog1.FilterIndex = 1;

            if (saveFileDialog1.ShowDialog() == DialogResult.OK)
            {

                DataManager dataManager = new DataManager();
                dataManager.SerializeObject(student1, saveFileDialog1.FileName);
            }
         
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            DataManager dataManager = new DataManager();
            textBox1.Text = dataManager.guidGenerator();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string fileName="";
            OpenFileDialog openFileDialog1 = new OpenFileDialog();
            DialogResult result = openFileDialog1.ShowDialog();
            if (result == DialogResult.OK) // Test result.
            {
                fileName = openFileDialog1.FileName;
            }



            DataManager dataManager = new DataManager();
            StudentForm deStudent1 = dataManager.DeSerializeObject(fileName);
         

            textBox1.Text = deStudent1.form_id;
            textBox2.Text = deStudent1.form_name;

            for (int i = 0; i < deStudent1.elementProperty_.ToArray().Length; i++)
            {
                listBox1.Items.Add(deStudent1.elementProperty_.ToArray()[i].element_name);
            }
        }
    }

Leave a Reply

Subscribe to Posts | Subscribe to Comments

Vicomi

cmt

Contact Form

Name

Email *

Message *

Dialog

    Popular Post

    Blogger templates

    Powered by Blogger.

    - Copyright © Testing -Metrominimalist- Powered by Blogger - Designed by Johanes Djogan -