I wanted to make it as easy as possible for other developers to use and extend the angryCoder source code, so I devised the concept of an eZine Framework. I created a collection of extensible assemblies and a database structure in SQL Server 2000 to complement it. Framework is also compatible with SQL Server 7, however, in order to make the code available to as many developers as possible. It makes extensive use of ASP.NET server controls, user controls, and code-behind classes. All of the business logic is contained in pre-compiled assemblies.
Framework is completely database driven.
In order to enhance its performance and scalability, I utilized the native caching capabilities of ASP.NET to create a mechanism by which I could cache both the navigation bars, as well as the user controls that contain the main content for the site. Parts of this caching mechanism were based on the IbuySpy Portal Application built by Microsoft. All application level settings are maintained using an XML serialized component that is stored in cache. This was built using the XML serialization objects available in the .NET Framework. Framework have seen many improvements over the past couple of months since they were born.