13.4 Retrieving a Type Directly

You can also retrieve a Type class by name (without needing an instance) using the static method GetType on the Type class. When specifying which type to retrieve, you can provide either the namespace-qualified name of the type, or the assembly-qualified name, as follows :

 Type t = Type.GetType("System.Int32"); Type t2 = Type.GetType("MyNamespace.MyType, MyAssembly); 

In the case in which you provide only the namespace-qualified name, GetType looks first in the calling assembly, and then in mscorlib.dll .

Finally, C# provides the typeof operator, which returns the Type class for any type known at compile time:

 Type t = typeof(System.Int32); 

The main difference between these two approaches is that Type.GetType is evaluated at runtime and thus is more dynamic, binding to a type in an assembly by name, while the typeof operator is evaluated at compile time and thus is slightly faster, binding to a type in a specific assembly version via a type token.



C# in a Nutshell
C # in a Nutshell, Second Edition
ISBN: 0596005261
EAN: 2147483647
Year: 2005
Pages: 963

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net