What's new in Composite C1 Online Documentation?

18 June 2012

What's New in C1 Online Documentation?

Almost a year ago we had an overview of the "then" new Composite C1 online documentation. A few more new guides and other developer and user documentation were published at http://docs.composite.net since then. Even though some of them may look "not so new" to you by now (especially if you are regular reader at our documentation site), it may still prove useful to have another overview of "what's been new in documentation" since July 2011.

The new articles and guides are presented here section-by-section.

Getting Started

Starter Site / Razor-Based

The Composite C1 setup wizard allows you to choose between a few website templates. The "Starter Site" template comes in a few versions based on the technology used. As Composite C1 supports Razor, a Razor version of the Starter Site template was added to the collection.

Getting Your Site Online

Once you have created a website locally, for example, on WebMatrix or local IIS, the next step is getting it online. You have at least three publishing options here: using WebMatrix, via FTP and on IIS. In addition, if you have an issue or two while publishing your website, you'll be able to identify and troubleshoot the most common ones.

C1 and Version Control

If you want to version control your Composite C1 website, here is some information that will help you choose what exactly to version control.

  • Composite C1 and Mercurial
    This guide is a practical application of the general "versioning" information above. It walks you through the steps to version control the website with Mercurial, a free distributed source control management tool.

Release history

This is your guide to the recent release versions of Composite C1 including its Service Packs and Patches. Here you can learn the version's release date, build number and what is new in it as well as get directions for further reading.

Getting Started / Configuration

Adding MIME types

Composite C1 supports a number of MIME types for files of various types (extensions), including those defined in .NET Framework by default. In this quick guide, you can learn how to add a specific MIME type for a specific file extension.

Resizing Images

Resizing images inserted on a page can be done via query string parameters where you specify the desirable width, height and choose one of the resizing actions.


Although an overview of the "Packages" documentation area is the topic that deserves a blog post of its own, here are two guides still worth mentioning here:

Fixing Broken Links

With the "Legacy URL Handler" package on board you can keep track of broken links on your website, get notified by email if someone clicks one and quickly fix them.

Modifying Files (via packages)

If you are one of those who creates packages for Composite C1, you might need this information on having a package modify an existing XML file by using XSLT.


C1 Localization

A new version of this guide will give you an overview of the tools you have in Composite C1 to localize a website.


Data Scopes

Composite C1 has different data scopes for published/unpublished data and data from different languages. When you use Composite C1 data in code, you can control what scope data comes from.


Handling URLs

You can dynamically generate C1 page URLs based on page IDs as well as use query string parameters and path info with them. In this quick guide you can learn how to properly handle such URLs applying your XSLT skills.


User Control Functions

The User Control functions allow you to create ASCX user controls and use them as regular C1 functions.


Razor is a view engine option for ASP.NET and has been enjoying much attention in the .NET world recently. As part of the community's effort, Composite C1 now supports the Razor syntax. You can create and use Razor-based C1 functions a.k.a. "Razor Functions".

Handling URLs

Composite C1 allows you to append additional information to a page URL - PathInfo - and use it in your ASP.NET code.

Optimize for Speed

A new subsection under "ASP.NET" contains a few tips and tricks for you to optimize your website for speed:

  • Identifying Slow Functions
    A lot of page rendering in Composite C1 is encapsulated in C1 functions. As part of the "Optimize for Speed" topic this guide shows you how to track the time each C1 function takes to execute when a page loads.
  • Optimizing LINQ Queries
    Queries in Composite C1 are essentially LINQ queries. To know how LINQ works in Composite C1 and how to handle possible query-related "bottlenecks" in both XML and SQL Data providers will certainly help you optimize your website for speed, too.

C1 Console

Tree Definitions Primer

If you have defined your own data types and wish to expose them with a customized tree structure, you can create a Tree Definition – a fairly simple XML file that declares the structure you want with commands you need. Although you can read about Tree Definitions in depth in our "Guide to Applications", you can also go for this "Tree Definitions Primer"  with a quick sample focused on the standard tree.

Node Click Events

Whenever the user clicks a node in the tree in the C1 Console, an event is fired. You can hook on to it and act on it. In this quick guide, you will learn how to intercept clicks on tree nodes in the Media perspective (media files/folders) and show custom content in the "default" view in response to the clicks.

Terminology List

If you are involved in localizing the C1 Console GUI, you may find useful this list of the most commonly used C1 Console-related terms and concepts with their definitions.

comments powered by Disqus