title: trying to get first item in collection returns NULL
body: <p>I've previously done a lot of development using Stored Procs to do all the data modifications. </p>
  
  <p>But I now need to use LINQ To SQL and a basic fundamental task has me stumped. </p>
  
  <p>I have a class called Book (Title, Author , etc). A number of books are instantiated and added to 
  public ObservableCollection Books</p>
  
  <p>So far so good, I can see that it holds valid books in its collection.</p>
  
  <p>I have a function <strong>DeleteOldestBook()</strong> which simply gets the first Book in Books , and deletes. This is where I run into trouble. </p>
  
  <p>I try and select</p>
  
  <pre><code>Book BookToDelete = Books.Take(1) as Book;
  </code></pre>
  
  <p>but it always returns NULL.</p>
  
  <p>I've managed a hacky workaround  :</p>
  
  <pre><code>var AllBooks = from BookToDelete in Books select BookToDelete;
  foreach (Book BookToDelete in AllBooks)
  { 
      //  BookToDelete.dostuff takes place ... 
      break; // only do 1
  }
  </code></pre>
  
  <p>But this is awful and I know there's something simple I've missed. </p>
  
  <p>Any ideas from the LINQ experts? Let me know you if you need more code.</p>
  
  <p>Thanks in advance</p>