title: How to limit a LINQ left outer join to one row
body: <p>I have a left outer join (below) returning results as expected. I need to limit the results from the 'right' table to the 'first' hit. Can I do that somehow? Currently, I get a result for every record in both tables, I only want to see one result from the table on the left (items) no matter how many results I have in the right table (photos).</p>
  
  <pre><code>        var query = from i in db.items
                  join p in db.photos
                  on i.id equals p.item_id into tempPhoto
                  from tp in tempPhoto.DefaultIfEmpty()
                  orderby i.date descending 
                  select new
                  {
                      itemName = i.name,
                      itemID = i.id,
                      id = i.id,
                      photoID = tp.PhotoID.ToString()
                  };
  
  
      GridView1.DataSource = query;
      GridView1.DataBind();
  </code></pre>