﻿# MasterPages

<datetime class="hidden">2004-01-07T00:00</datetime>
<!-- category -- mostlylucidcouk, Imported, ASP.NET, Web Development, Architecture -->

As I've written about a hundred times now. I'm currently rebuilding this site - don't
stop reading, I really am this time!

So, I'm in the process of defining an architecture - rebuilding the site is more about
my playing with some new technologies rather than actually making a site thats' for
anything. The architecture I choose will have many of the features I'd expect to see
in ASP.NET 2.0 - with a view to converting once I get the bits.

The way it is currently going is to use a version of [MasterPages](http://www.asp.net/ControlGallery/ControlDetail.aspx?control=385&amp;tabindex=2) ,
maybe taking a few pointers from [Paul
Wilsons articles](http://aspalliance.com/PaulWilson/Articles/?id=13)on the subject. In addition I want to have some sort of MVC type
implementation, where I can control the flow and navigational logic from a central
location - there's an approach I've used before in Java where the Controller is responsible
for filling the page Context with the information which the page needs to render,
the page then just has to access Context to populate itself, might see if this is
easy in ASP.NET.

Of course, I'm going to be heavily using the [MS
Application Blocks](http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/daab-rm.asp)  - I can't emphasise enough how fantastic these things
are when building applications!

One thing I really dislike about the current BlogX - the blogging engine currently
powering this site - is that it doesn't use SQL Server- this essentially means my
information is stored on the server in plain XML - it's hard to index (no search!),
if some other format comes along, it'll mean writing a hideous XSLT to do the transform
and I can't load balance the site (OK, not a problem any time soon, but the Architect
in me objects). Plan will be to replace BlogX with another engine (with a better architecture),
this will be based on SQL Server, have built in support for encryption and [compression](http://www.icsharpcode.net/OpenSource/SharpZipLib/Default.aspx) -I
hate the fact that right now, big old chunks of unencrypted XML contain the config
settings for my site and regularly fly through the ether - this is NOT secure in the
slightest. In addition, front-end caching (even more necessary with the shift to SQL
Server) - I may even have a look at caching each blog entry as an entity and then
just assembling them as the page renders...hmm...