title: How do I load a generic type containing nested types from dynamically loaded assemblies?
body: <p>In an assembly loaded into the current AppDomain using <strong>Assembly.LoadFrom</strong>, I have the following code:</p>
  
  <pre><code>[TypeConverter(typeof(EnumConverter&lt;Shapes&gt;))]
  public enum Shapes
  {
    Triangle,
    Square,
    Circle
  }
  </code></pre>
  
  <p>The generic EnumConverter&lt;T&gt; is defined in the assembly returned by calling Assembly.GetEntryAssembly().  When I read the TypeConverter attribute at runtime, I get the full name of the type which looks something like:</p>
  
  <pre><code>MyAssembly.EnumConverter`1[[MyDynamicAssembly.Shapes, MyDynamicAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]
  </code></pre>
  
  <p>However, when I call Type.GetType() on the string, it returns null.  I expected to be able to get an instance of System.Type. Also note that MyDynamicAssembly was not generated by Reflection.Emit (pointed out in the MSDN article <a href="http://msdn.microsoft.com/en-us/library/w3f99sx1.aspx" rel="nofollow noreferrer">here</a>).</p>
  
  <p>This code was generated on Visual Studio 2005 using .NET Framework 2.0.</p>
  
  <p>Has anyone found a workaround for this bug/limitation? Has it been fixed in 3.5?</p>