title: <%$, <%@, <%=, <%# ... what's the deal?
body: <p>I've programmed in both classic ASP and ASP.NET, and I see different tags inside of the markup for server side code.  </p>
  
  <p>I've recently come across a <a href="http://blogs.msdn.com/dancre/archive/2007/02/13/the-difference-between-lt-and-lt-in-asp-net.aspx" rel="noreferrer">good blog on MSDN</a> that goes over the difference between:</p>
  
  <ul>
  <li><code>&lt;%=</code> (percentage together with equals sign) and </li>
  <li><code>&lt;%#</code> (percent sign and hash/pound/octothorpe) </li>
  </ul>
  
  <p>(<code>&lt;%#</code> is evaluated only at databind, and <code>&lt;%=</code> is evaluated at render), but I also see:</p>
  
  <ul>
  <li><code>&lt;%$</code> (percent and dollar sign) and </li>
  <li><code>&lt;%@</code> (percent sign and at symbol).</li>
  </ul>
  
  <p>I believe <code>&lt;%@</code> loads things like assemblies and perhaps <code>&lt;%$</code> loads things from config files?  I'm not too sure.</p>
  
  <p>I was just wondering if anyone could clarify all of this for me and possibly explain why it's important to create so many different tags that seemingly have a similar purpose?</p>