Monday, June 10, 2013

Cross Threaded Invoke of typed method

private string MyMethod(string inString)
{
   if (this.InvokeRequired)
      return (string)this.Invoke(new MethodInvoker(() => MyMethod(inString)));
   else
   {
      string result = "";
      // working code of MyMethod
      return result;
   }
}

Friday, February 15, 2013

Serializing a class

The Class:

    [Serializable]
    public class _Config
    {
        public string AppTitle { get; set; }
        public int AppNumber { get; set; }        
    }



To Serialize:

         using System.Xml.Serialization;         

    XmlSerializer ser = new XmlSerializer(typeof(_Config));

    var config = new _Config()
                {
                   AppTitle = "MyApp",
                   AppNumber = 42
                };



    using (var writer = new     
           StreamWriter("c:\\some\\path\\MyApp.xml"))
    {
        ser.Serialize(writer, config);
    }

To Deserialize:


   using (var reader = new 
          StreamReader("c:\some\\path\\MyApp.xml"))
   {
       config = (_Config)ser.Deserialize(reader);
   }