title: Best practice to check if DataRow contains a certain column
body: <p>At the moment, when I iterate over the <em>DataRow</em> instances, I do this.</p>
  
  <pre><code>foreach(DataRow row in table)
    return yield new Thingy { Name = row["hazaa"] };
  </code></pre>
  
  <p>Sooner of later (i.e. sooner), I'll get the <em>table</em> to be missing the column <em>donkey</em> and the poo will hit the fan. After some extensive googling (about 30 seconds) I discovered the following protection syntax.</p>
  
  <pre><code>foreach(DataRow row in table)
    if(row.Table.Columns.Contains("donkey"))
      return yield new Thingy { Name = row["hazaa"] };
    else
      return null;
  </code></pre>
  
  <p>Now - is this the simplest syntax?! Really? I was expecting a method that gets me the field if it exists or <em>null</em> otherwise. Or at least a <em>Contains</em> method directly on the <em>row</em>.</p>
  
  <p>Am I missing something? I'll be mapping in many fields that way so the code will look dreadfully unreadable...</p>