title: Add new cs files on-the-fly to load on my running application?
body: <p>I have a command handler which basically works like this:</p>
  
  <pre><code>ControlList.Handlers[CommandType.MyCommandComesHere].Handle(data);
  </code></pre>
  
  <p><code>Handlers</code> is a <code>Dictionary&lt;CommandType, ICommandHandler&gt;</code> and <code>CommandType</code> is a enum.</p>
  
  <p><code>Handle</code> by its turn would lead it to this:</p>
  
  <pre><code>using System;
  using log4net;
  
  namespace My_Application
  {
      public class MyCommand : ICommandHandler
      {
          private static readonly ILog Logger = LogManager.GetLogger(typeof(MyCommand));
  
          public void Handle(Events data)
          {
              Console.WriteLine("I can load cs files on the fly yay!!");
          }
      }
  }
  </code></pre>
  
  <p>My question is how can I make so my application would compile and let me use that cs file while its running?</p>
  
  <p>Any simple example of this would be greatly appreciated but not required as long as I can get some pointers as to what I need to look for as I am not even sure what do I need to make this happen.</p>
  
  <p><strong><em>To put it simple I am currently trying to understand how could I load a cs file into my application that is already compiled and is currently running.</em></strong></p>