About XML Content Management System

ASP.NET XML Content Management Systemwe can helps you to build xml content management system (CMS) and provides you the this latest technology brief descriptions. This CMS based on C#/ASP.NET which is very user friendly content management system for XML and asp.net based applications.Basically, XML-CMS allow you to makes a mini database out of your document with simplicity. It's best for the medium size business web based projects, your personal portfolios, or any kinds of sites users.You can have the every control of the content management system (CMS) applications very easily.

While you can used of the ASP.NET xml cms without any advance technical knowledge of C# or ASP.NET and run the CMS on Mircosoft IIS, Apache on Nginx web servers it's so simple any school boy can have access this very comfortably.This CMS does not used the default .NET Controls while offers the improved performance using Html Outputs Compression with HTML comments removals with a powerful .NET based CMS.

The Content Management System .NET projects are well-architectured with a strong C#/ASP.NET Object Oriented Programming model. Its C# code follows and respects the .NET/C# and ASP.NET good naming conventions.

ASP.NET XML Content Management System

The Xml Content Management System comes with a hight Maintainability Index. Each .NET project has a good Code Metrics results and a minimum of 80% Maintainability Index. The Dotnet Xml Cms Maintainability Index is so hight and represents the relative ease of maintaining the code.

ASP.NET XML Content Management System

A Brief History

ASP.NET XML Content Management SystemHaving more than 100 domains and if you need updating .NET assemblies static contents or common graphics, images, making item bold, adding products, plugins, or need to add or remove any sections, category etc was a hard task you need to do step by step and one by one. This one is hard maintenance task which can takes too much times. But here our coded the An XML Content Management System written Content Management System which can saves your precious times and makes this all things easy for you with just few clicks. NET code running different on domain names at the same time.

we kept in minde the following goals :
A. Running the CMS on both Microsoft IIS and Common Linux webservers.
B. Running the CMS on Mono using Mono Fast CGI.
C. Sharing common images and Jquery plugins between all domains.
D. Using the same .NET assemblies for all domains.
E. Using a template engine that handles .NET Objects.
F. Using reusable HTML content like Google Analytics javascript.
F. Editing any domain content from a SSH console.

Server Requirements

ASP.NET XML Content Management SystemThe CMS runs on both Microsoft Windows and Linux environments. Depending on the web server you deploy it, please consider the following requirements :

Microsoft Windows requirements :


1. Microsoft IIS 6.0 or any higher version.
2. Microsoft .NET Framework 3.5 or any higher version.

Linux requirements :


1. Nginx, Apache or any Linux equivalent web server.
2. Mono FastCGI Server.

Deploy CMS Files

ASP.NET XML Content Management SystemThe Content Management System comes with few files because all website pages are defined dynamically in XML files. To deploy the CMS, copy the following files to your web server :

File name File type Target folder
Index.aspx ASP.NET Server Page ~/webserver-root/
Global.asax ASP.NET Server Application ~/webserver-root/
Web.config XML Configuration File ~/webserver-root/
NVelocity.dll Application extension ~/webserver-root/bin/
Framework.Core.dll Application extension ~/webserver-root/bin/
Framework.Web.Core.dll Application extension ~/webserver-root/bin/
Framework.TemplateEngine.dll Application extension ~/webserver-root/bin/
Framework.TemplateEngine.Interfaces.dll Application extension ~/webserver-root/bin/
Framework.XmlContentManagement.Services Application extension ~/webserver-root/bin/
Framework.Web.XmlContentManagement.dll Application extension ~/webserver-root/bin/

Create Domain

ASP.NET XML Content Management System ASP.NET XML Content Management SystemOur content management system supports running numerous domain names using the same .NET code from the same objective folder. Each domain classification has its own XML file. When the .NET based application stats which loads with all the defined domains from a physical directory to set this path you should edit your Web.config file and update the XmlService.Configurations. folder variable. Do not use physical path because whether you are using Microsoft Windows or Linux, the CMS will convert the virtual path to physical path for you.

ASP.NET XML Content Management System

Variable name Value File name
XmlService.Configurations.Folder ~/configurations/ Web.config

To add a new virtual domain to the CMS, you need to create an XML file with the following variables :

ASP.NET XML Content Management System

Xml Element Description .NET Type
Domain Virtual domain name System.String
IsDefaultConfiguration Sets the domain as the default one XmlService
PagesFolder Virtual path for domain pages System.String
PagesSectionsFolder Virtual path for domain pages sections System.String
HideQueryVariables May be used for URL rewritting System.Boolean
PageIdQueryStringVariable Query string variable to display page by its Id System.String
PageAliasQueryStringVariable Query string variable to display page by its Alias System.String
BackLinks List of domain backlinks System.Collections.Generic.List
Advertissements List of domain advertissements System.Collections.Generic.List

Create a Web Page

ASP.NET XML Content Management System ASP.NET XML Content Management SystemThe CMS uses a unique Active Server Page : Index.aspx. Basically, when the Index.aspx page is loaded, it looks for the current virtual configuration based on the HTTP Request domain name. Once a virtual configuration is found, the Index.aspx page will try to display the request page based on 2 Query String variables : PageId and PageAlias. If there's no variables, the CMS will try to display the current virtual configuration default page (if you there's any).

Variable name Description
PadeId Page Id - If there's one, the CMS will look for this page and display it.
PageAlias Page Alias - If there's one, the CMS will look for this page and display it.

ASP.NET XML Content Management SystemAll pages are virtual and defined into XML files. Each virtual page has its own XML definition file. The domain Pages XML files should be placed on the same folder. A dynamic page is a composite of PageSesctionReference. A PageSectionReference is a link to a PageSesction Item on the current domain name. A virtual page is defined as following :

ASP.NET XML Content Management System

Xml Element Description .NET Type
PageId Page identifier. Should be unique on the same domain System.String
IsDefaultPage Sets the current page as default one for current domain System.Boolean
OutputHtmlCompression Enables or disables [ HTML compression ] System.Boolean
OutputHtmlCommentsRemoval Enables or disables [ HTML Comments removal ] System.Boolean
PageAlias Page alias. Should be unique on the same domain System.String
Title Sets the Page Title meta tag. Should be into a CDATA block System.String
Description Page description. Should be into a CDATA block System.String
Keywords Page keywords. Should be into a CDATA block System.String
PageSectionsReferences Reference to a page section by PageSection.SectionId System.Collections.Generic.List

Create Page Sections

ASP.NET XML Content Management System ASP.NET XML Content Management SystemLike it's the case of dynamic pages, the pages sections are virtual and defined into XML files. Each page section has its own XML definition file and could be used by any page of the current domain name. The domain Pages Sections XML files should be placed on the same folder. A page section is defined as following :

ASP.NET XML Content Management System

Xml Element Description .NET Type
SectionId Section identifier. Should be unique on the same domain System.String
PageSectionType 3 case sensitive values : Header, Body, All : Where outputs are displayed. System.Enum
Dynamic Sets the section as dynamic to be processed as an NVelocity template. System.Boolean
Comments Section comments System.String
Icon Section icon System.String
Contents Section Html contents or NVelocity template. Should be into a CDATA bloc System.String
Title Section title System.String
InitializeItems May be used in NVelocity templates to display enrties System.Boolean
InitializeItem May be used in NVelocity templates to display an enrtie System.Boolean
InitializeLastItems May be used in NVelocity templates to display last enrties System.Boolean
Debug May be used in NVelocity templates to display debug outputs System.Boolean
InitializeBanners May be used in NVelocity templates to initialize domain banners System.Boolean
Variables Internal section variables System.Collections.Generic.List

Author Information

ASP.NET XML Content Management System The XML Content Management System developed and maintained by Badr CHOUFFAI and sold exclusively on codecanyon.net marketplace. Get your open source copy today...

Help & Support

ASP.NET XML Content Management SystemFor help or questions regarding the XML Content Management System, please feel free to contact me by email at chouffainet@gmail.com or visit my web page at www.badr-chouffai.com.