Why does casting int to invalid enum value NOT throw exception?
<p>If I have an enum like so:</p>

<pre><code>enum Beer
{
    Bud = 10,
    Stella = 20,
    Unknown
}
</code></pre>

<p>Why does it not throw an exception when casting an <code>int</code> that is outside of these values to a type of <code>Beer</code>?</p>

<p>For example the following code doesn't throw an exception, it outputs '50' to the console:</p>

<pre><code>int i = 50;
var b = (Beer) i;

Console.WriteLine(b.ToString());
</code></pre>

<p>I find this strange...can anyone clarify?</p>
