I want to generate a correct type string by using reflection. The problem is that the generic types doesnt look like the declarations. Anyone know how to get the type name as it's declared?

For instance, List<string> becomes List`1, and it's FullName is System.Collections.Generic.List`1[[System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

I would like to get it back as List<string>.

Anyone got some code for this?