You must keep one important thing in mind when you are deciding whether to use .NET or XSLT to render your macros. Although .NET provides you with access to both published and unpublished content, XSLT-powered macros can only access published content that resides in the cache. This offers a couple of benefits:

  • When requesting content, you can be sure that unpublished content will never be displayed.
  • You'll have no roundtrips to the database to retrieve content. So, any operations on the content tree are very fast.

image When accessing content in .NET you can use the Document API to access all content. This makes requests to the database, so be sparse with your usage of the Document API in large installations. Umbraco also exposes the functionality of using the NodeFactory, discussed in Chapter 12. This factory allows you to run XSLT and XPath statements on published content from your .NET user controls.

For more information, see Chapter 12.

To get a clear picture of what the XML cache looks like, you can open up the cache file. In Umbraco 4.5.x and later, you can find this file in <install root>/App_Data/umbraco.config. In earlier versions, you can find the file by going to <install root>/data/umbraco.config.

As with earlier demonstrations in this book, you will get output that differs from the examples for both Umbraco versions 4.5.x and 4.x. The ...

Get Umbraco User's Guide now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.