WebVize's WebLog

An independent C# Developer in the Netherlands

Finally .. Back working on a new content management system

Right now I finally am able to do some work on the new Content Management System for the Kids Community Kaboem. Kaboem was sold to Ilse last month so the pressure is on..

As I have said this is totally my idea of how Content Management should work. Being able to be flexible in all different parts and all aspects of what the site should be.

What is in my opinion the problem with current systems?
All current systems can do a hell of a job managing content in all its facets  but in my definition a site is a ordered collection of content and functionalities to interact with the user.
Here is where it goes wrong for many systems, at least you have to do some hard work to integrate your idea's within a 'boxed' product, the interactivity with the user.

How to maintain the option to integrate interact with the user?
Keep on using the power of ASP.NET.

So finally I am building a system that will hold the definition of the site eg. the definition of the content, the definition of a module and the definition of a page.
Combine these together in a build system, keep the option to have asp.net script tags within definitions and I keep the power of ASP.Net and pre-merge content in the modules so that performance is not depending on the speed of the SQL server.

Included is a link to a screen shot of the first partial working system.. Yes I do use a lot of win form user controls in ASP.NET. Why ? I like the presentation and the speed of the local objects.

Link to screen shot.
(if for whatever reason you would like to see more screen shots .. Leave me a comment and I will place some more!)

Comments

Mischa Kroon said:

Yes I would like to see more / hear more :)
# October 8, 2004 7:23 AM

Michael Hensen said:

Ok, I will place some more including comment so that you get a bigger picture of where I am going :-)
# October 8, 2004 8:08 AM

cyriel said:

hm... so, according to that screenshot the cms ui is actually managed by the cms? :p
# October 8, 2004 8:11 AM

Michael Hensen said:

Sure.. This way I can easily manage the functionalities of the CMS. Mind that these functions will be blocked based on roles. But if needed new menu items can be easily created and actions set for.. (and then used ofcourse)
# October 8, 2004 8:18 AM

Jeff Gonzalez said:

We did something similar for the automotive industry. We host 5,000 dealer websites off 1 codebase (read: one iis root)

We store just about EVERYTHING in the database. There actually isn't a single .aspx file in the whole application. We assembly the page dynamically using an HttpHandler. We have abstracted all of the major concepts into a database. Sites, Pages, Controls (particular functionality like Content or DynamicForm) and PageControls (instances of Controls on Pages)

It sounds like you are working on something very similar.
# October 8, 2004 10:28 AM

Jeff Gonzalez said:

I guess you might not have this problem, but I am curious what you would do in the case that you did... In using Windows Form controls the client would need the ability to access Sql Server/Oracle/MySql/DatabaseGoesHere. We colocate our web application in 3 different geographic locations and it would be an unwise decision to allow incoming sql connections, even from a known ip range.
# October 8, 2004 10:32 AM

Michael Hensen said:

I am not accessing data direct from the controls. I use a webservice to collect the data. This layers is can talk to either sql or Oracle.. others I haven't tested yet
# October 8, 2004 10:36 AM

Michael Hensen said:

Jeff,

Very interesting of how you handled it. I think we differ in one point and that is taht I will eventually have a complete aspx/ascx site rendered from the definitions and data,
I am interrested in how you handles the various types of content..
# October 8, 2004 10:37 AM

Jeff Gonzalez said:

Yeah I guess a webservice could make sense and be used in that environment.

Our sites are completely themable and skinnable as well. You can imagine we need to make 5000 dealer websites look differently.

Take for example...
http://timclay.webmakerx.net
and
http://www.towneastford.com

Both of those sites run off the same IIS web.

How we handle controls is pretty interesting. We have defined a specific set of functionality as a ControlType.

Content and InventorySearch are 2 different ControlTypes. They usually have 1 codebehind and possibly multiple ascx interfaces. The codebehind is responsible for the generic data access common to all UIs of a particular ControlType. If there is any special functionality inherrent to the UI we do this in the ascx. This allows us to customize UIs for a group of customers or 1 single customers (we always get asked for 1 off stuff) while maintaining the single codebehind as a stub to our business/data model.

# October 8, 2004 11:20 AM
Leave a Comment

(required) 

(required) 

(optional)

(required)