Some of the standard ASP.NET server controls allow the user to specify a template containing custom markup that will be used inside the server control. It is possible to create “.ascx” user controls that make use of this type of template. The MSDN documentation explains how.
C# 3.0 features for .NET 2.0
When discussing the new features in Visual Studio 2008, LINQ gets most of the press. However, LINQ only works if you are targeting the .NET 3.5 Framework. Another new feature of Visual Studio 2008 is the ability to choose which Framework version to target, and sometimes you just don’t have the luxury of upgrading all your users to the latest Framework. Fortunately several of the new language features in C# 3.0 don’t require library support, so here are some useful enhancements that work just fine when targeting the .NET 2.0 Framework.
- Lambda Expressions (more via Eric White and Scott Guthrie)
- Auto-Implemented Properties (more via Scott Guthrie and Dan Wahlin)
- Object and Collection Initializers (more via Dan Wahlin and developer.com)
- Implicitly Typed Local Variables (more via Scott Guthrie)
Extension Methods (more via developer.com and Scott Guthrie)
Update: It turns out that the compiler attaches an attribute to extension methods that is not defined in the .NET 2.0 library, so extension methods can only be used with .NET 3.5 after all.
WebResource.axd mystery solved
Clearly blog posts have been very sparse here, so I’m going to try something new. Whenever I find a good article or web site that helps me solve a particular problem I’m having, I’ll try to dash off a quick post referencing it. This’ll help me locate the information if I need it again later, and maybe it will help someone else find what they’re looking for too.
Have you ever noticed those strange “WebResource.axd” URLs that ASP.NET likes to generate? I recently needed to return a JavaScript resource from a custom ASP.NET control and wondered if I could take advantage of “WebResource.axd” myself. Via ASP.NET blogger Jeff Putz, Using WebResource.axd for embedded resources shows you how.