title: Real-world examples with subtyping constraints in .NET generics
body: <p>Are there any real-world examples of using subtyping constraints on type parameters in .NET generics? By «subtyping constraints» I mean</p>
  
  <pre><code>where T : &lt;base class name&gt;
  </code></pre>
  
  <p>and</p>
  
  <pre><code>where T : U
  </code></pre>
  
  <p>May be there are some standard generics with corresponding constraints? Or specialized generic .NET-libraries.</p>
  
  <p><strong>UPD</strong> There are lots of good examples with interface constraints </p>
  
  <pre><code>where T : &lt;interface name&gt;
  </code></pre>
  
  <p>But <strong>subtyping</strong> constraints seems to be very specific and not so useful. I try to understand, in which cases this kind of constraints is really crucial. <strong>Luaan</strong>'s answer contains examples with <code>where T : &lt;base class name&gt;</code> from ASP.NET MVC, but I am still interested in real-world examples with <code>where T : U</code> constraint.</p>