title: c#, Internal, and Reflection
body: <p>Is there a way to execute "internal" code via reflection?</p>
  
  <p>Here is an example program:</p>
  
  <pre><code>using System;
  using System.Reflection;
  
  namespace ReflectionInternalTest
  {
      class Program
      {
          static void Main(string[] args)
          {
              Assembly asm = Assembly.GetExecutingAssembly();
  
              // Call normally
              new TestClass();
  
              // Call with Reflection
              asm.CreateInstance("ReflectionInternalTest.TestClass", 
                  false, 
                  BindingFlags.Default | BindingFlags.CreateInstance, 
                  null, 
                  null, 
                  null, 
                  null);
  
              // Pause
              Console.ReadLine();
          }
      }
  
      class TestClass
      {
          internal TestClass()
          {
              Console.WriteLine("Test class instantiated");
          }
      }
  }
  </code></pre>
  
  <p>Creating a testclass normally works perfectly, however when i try to create an instance via reflection, I get a missingMethodException error saying it can't find the Constructor (which is what would happen if you tried calling it from outside the assembly).</p>
  
  <p>Is this impossible, or is there some workaround i can do?</p>