Rating: 4 out of 5 stars
Price: Free for personal use; starting at $499 for small businesses up to $19,999 or more for enterprise use
Some of the most popular programs that ASP.NET developers create are ones that provide content management functionality, such as displaying product catalogs, blogs, or knowledge bases. Building a basic content management system (CMS) in ASP.NET is such a prevalent exercise that it is often the highlight of ASP.NET tutorial books. Building a functional foundation for a CMS is the easy part; creating the presentation component of the CMS can be more challenging for developers.
Free open source CMS programs such as DotNetNuke offer help, but some companies may not want to rely on an MIT License project for various reasons (e.g., corporate liability, an aversion to open source accountability issues, the need to integrate with proprietary services). And although DotNetNuke has commercial editions that help address these concerns, they come at a price that's comparable to competing commercial ASP.NET-based CMS offerings. One of these competitors, Telerik, has been in the ASP.NET component business for years and has bundled its expertise into an impressive and extensible CMS called Sitefinity. The latest major version, Sitefinity 4.0, now offers a vast array of modern features that would take even the most experienced .NET developer months to replicate.
Sitefinity 4.0 Features
The first striking aspect of Sitefinity is its attractive and intuitive user interface—shown in the Getting Started screen in Figure 1—from the content entry and presentation side to the administrative and metrics-reporting side.
Figure 1: Telerik Sitefinity CMS features displayed in the Dashboard
It's obvious from the layouts of these screens that Telerik worked hard on the product's usability and on tweaking the displays to make them look as appealing and user-friendly as they do. These aspects alone would be enough to convince generalists of Sitefinity's value. And yet, beyond the obvious UI benefits, Sitefinity has a long list of other compelling features that go beyond the average CMS. For example, it can publish and consume content from a variety of sources, including SharePoint, email, Twitter, and RSS.
As is expected these days, the content entry screens feature a rich HTML editor with the usual toolbar buttons for links, images, attachments, and embedded media files such as Flash videos, tables, fonts (typefaces and sizes), and other attributes. The ability to directly import Microsoft Word documents into the editor is a nice touch. Developers can also create pages and templates via an easy drag-and-drop interface that makes navigational edits and style designs a snap. Users can manage ACLs for the most granular aspects of the features that are available on the site. And after the application is serving pages, the HTML generated is fully standards-compliant and ready to run on the full range of browsers, including Internet Explorer, Firefox, Opera, Chrome, and Safari.
Standout Features: SEO Tools and API
After sites are up and running, Sitefinity's built-in search engine optimization (SEO) tools start capturing a slew of metrics with results that are attractively rendered in data-rich graphs and charts detailing real-time web analytics such as browser types, mobile devices used, interactive regional maps, and SEO-relevant data, as shown in Figure 2. Sitefinity maintains an audit trail of site changes, and it supports CAPTCHA to help fend off spammers and auto-posting advertisement bots.
Figure 2: Sitefinity analytics tool
All these features are interesting on their own, but what really makes Sitefinity an attractive platform for ASP.NET developers is its extensive, fully exposed API that provides access to the CMS's localization, notification, search, and workflow services. The API is well documented with examples that even less-experienced .NET developers can quickly leverage.
Training videos, sample demos, and Telerik's online forums and knowledge bases mean that developers are well supported by the Sitefinity community and by Telerik developers at large. And because the page templates are natively supported for editing in Visual Studio 2010, as shown in Figure 3, developers don't have to worry about incompatibilities or feel compelled to learn a separate tool for writing and testing ASP.NET code.
Figure 3: Working with a Sitefinity project in Visual Studio 2010
Also, as you might expect, Telerik has completely integrated Sitefinity with its ASP.NET and Silverlight controls. For this reason, I had no trouble getting myself acclimated to Telerik's design schema. Indeed, developers who are already familiar with Telerik's component suites will find themselves quite productive within the Sitefinity framework.
Areas for Improvement
Although Sitefinity has a lot going for it, there are a few areas of this broad platform that I think need additional improvement. I would like to see Telerik include a wizard or kits for Microsoft Exchange Server integration, such as for auto-generating Exchange forms into web forms that use the same routing rules for other Exchange messages. (Telerik said it is planning to offer a SharePoint connector for Sitefinity in the near future.) The emerging Sitefinity Marketplace, a commercially driven add-on service, has a paltry number of submissions, most of which are hardly noteworthy.
Additionally, the product's Facebook integration is extremely weak. Future iterations of Sitefinity should really pursue this social media aspect by adding full support for Facebook APIs and some nifty examples of real-time interactions with rich media and analytics tie-ins to social media graphs. And while there's an obvious bias toward hosting Telerik ASP.NET controls, it would be nice to see the product incorporate other third-party ASP.NET controls. Such a move would demonstrate how community and commercially driven solutions could further extend Sitefinity in creative and compelling ways.
These minor criticisms aside, I remain quite impressed with the quality of this total CMS package. Its latest iteration is a remarkably well-designed and polished system that makes out-of-the-box site creation painless while giving developers nearly total control over the functionality and extensibility of the product's features. Well done, Telerik!
For more information about pricing and features, visit www.sitefinity.com/purchase/license-comparison.aspx. You can set up a fully functional trial version in a cloud sandbox scenario, or you can download it from the Telerik website at www.sitefinity.com/download.aspx.
Editor's note: As this article was being prepared for publication, Telerik released Sitefinity 4.1, which per the vendor includes performance improvements and support for Windows Azure.
Mike Riley ( [email protected]) is an advanced computing professional specializing in emerging technologies and new development trends. He is also a contributing editor for DevProConnections. Follow Mike on Twitter @mriley.