title: Using attributes to cache a method's return results in C#
body: <p>In webmethods, it is very simple to implement caching by annotating [WebMethod(CacheDuration...] attribute. Can we create something similar for non-webmethods, such as Static methods?</p>
  
  <p>Any help/tip is appreciated.</p>