Comparing types of generic lists
I'm trying to compare two `IList<T>` by their Type. Both lists have the same `T` and therefore I thought they should have the same type. 

In debug-mode in Visual Studio in the tooltip I can read the types of both and it is the same.

But `Equals()` ant the `==` Operator return both `false`.

Can anyone explanin this weired behavior?

Little Example:

    public IList<string> list1 = new List<string>();
    public IList<string> list2 = new List<string>();
    
    var type1 = list1.GetType();
    var type2 = list2.GetType();
    
    if(type1.Equals(type2))
    {
         //I never reach this point, but the Visual-Studio Tooltip shows the same
    }
Comparing types of generic lists
===

I'm trying to compare two `IList<T>` by their Type. Both lists have the same `T` and therefore I thought they should have the same type. 

In debug-mode in Visual Studio in the tooltip I can read the types of both and it is the same.

But `Equals()` ant the `==` Operator return both `false`.

Can anyone explanin this weired behavior?

Little Example:

    public IList<string> list1 = new List<string>();
    public IList<string> list2 = new List<string>();
    
    var type1 = list1.GetType();
    var type2 = list2.GetType();
    
    if(type1.Equals(type2))
    {
         //I never reach this point, but the Visual-Studio Tooltip shows the same
    }