title: Why must C# extension methods be defined in static classes?
body: <p>I understand that C# extension methods must be static. What I don't understand is why these extensions can't be defined in non static classes or generic ones?</p>
  
  <p>Update: I am interested in the reason behind this design decision.</p>