title: How to check whether a Generic Type T is IEnumerable<T'> where T' is unkown
body: <p>I've written an extension method like this:</p>
  
  <pre><code>public static String Join&lt;T&gt;(this IEnumerable&lt;T&gt; enumerable)
  {
      if (typeof(T) is IEnumerable&lt;T'&gt; where T' is unknown at compile time)
      {
          return String.Join(",", enumerable.Select(e =&gt; e.Join()));
      }
      return String.Join(",", enumerable.Select(e =&gt; e.ToString()));
  }
  </code></pre>
  
  <p>The problem is I don't know how to write code inside the if statement to make it works.
  Any suggestion? Thanks!</p>