Quick Blurb – Generic Types

Just a quickie that’s been bothering me:

The types MyType and MyType<T> are not the same type, as you might already know. Also, MyType<int> and MyType<string> are not of the same type. So, how do I find out if MyType<int> and MyType<string> are from the same MyType<T>?

I will use the Type.GetGenericTypeDefinition() method like so:

MyType<int> i, MyType<string> s;
bool b = s.GetType().GetGenericTypeDefinition() == i.GetType().GetGenericTypeDefinition();

Cool.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s