So, I finaly have a RTM version of Visual Studio 2005... go me!
I've been working on some of the "plumbing" of the site, classes like LabelCollection, interfaces like ILabelable, IErrorPage, IOwner, and such... the class designer is my favorite new feature, if it had a wee bit more support for things like indexers it would be beautyful. So here is one particular thing that is of interest...
In the data tier, there is a table on the order of [User.Photo]... This table is defined with columns like (PhotoID uniqueidentifier, OwnerID uniqueidentifier, Metadata xml, MimeType varchar(32), RawData image) right? It's a basic schema for such a table... my first task was to create the "ImageFetch" object, and being used to ASP.NET1.X I went straght to a ASHX file... but, I discovered something interesting, there is a new ASIX file in ASP.NET2 for serving image files!!! Yippie I thought! Only one small problem, Visual Studio has no support for it. I was like, the heck? So I have yet to decide wether I am going to simply create the ASIX and let it be, or to use a better supported ASHX... perhaps your comments will let me know eather way.
Other things I have been doing, I will use a database MySpaceNGASPNET for the userbase as well as some select user information in the form of the "Profile" property, but majority of the actual content will go into MySpaceNG, so talking to two databases, fun. The reason is that the ASP.NET membership provider makes things SO easy its not even funny... in fact its a simple matter to link the two...
Guid _userGuid = (Guid)User.Identity.DataStoreIdentity;
or something like that, anyway, the users all have Guids, spiffy
other things of note, ASP.NET2 caching supports SQL invalidation, basicly, a page can be cached until its invalid... there is just one problem with this that I see, if I have a table names [Mail.Messages] that has all the messages in the database, then I can't make Caching work because the invalidation works on a table basis... meening that if anyone sends a message to anyone, it will invalidate all users inboxes... I'm sure there will be plenty of good uses though!