<p>If I query a table with a condition on the key field as in:</p>

<pre><code>        var user = from u in dc.Users
                   where u.UserName == usn
                   select u;
</code></pre>

<p>I know that I will either get zero results or one result. Should I still go ahead and retrieve the results using a for-each or is there another preferred way to handle this kind of situation. </p>

Why not something like
```
```
var user = dc.Users.SingleOrDefault(u=> u.UserName==usn);
```
```