Tot op heden werd het Umbraco CMS aangestuurd door XML welke d.m.v. XSLT omgevormd werd tot HTML. Vanaf versie 4.7 is het echter mogelijk om de omvorming naar HTML te laten gebeuren d.m.v. de Razor techniek. Aangezien deze techniek een kortere syntax heeft dan XSLT en daarnaast eigenlijk gewoon C# is zullen programmeurs hier vrolijk van worden. Het probleem is/was namelijk dat XSLT een niet gangbare syntax heeft waardoor de gemiddelde programmeur er niet altijd even vrolijk van werd.
Met Razor wordt de syntax om iets te bereiken veel korter dan wanneer hetzelfde bereikt moet worden d.m.v. XSLT. Doordat de code cleaner/korter is dan XSLT zullen Umbraco websites welke d.m.v. Razor aangestuurd worden beter te onderhouden zijn dan een Umbraco website aangestuurd d.m.v. XSLT.
Hieronder vindt u de meest gangbare Razor code om iets te bereiken in Umbraco:
CsharpKinderen van huidige pagina inclusief maximum
@{ var numberOfItems = 10; }
Breadcrumbs
Afbeelding met check
@if (!String.IsNullOrEmpty(@Model.Media("contentImage","umbracoFile")))
{
}
Menu
Sitemap
@helper traverse(dynamic node){
var maxLevelForSitemap = 4;
var values = new Dictionary();
values.Add("maxLevelForSitemap", maxLevelForSitemap) ;
var items = node.Children.Where("Level <= maxLevelForSitemap", values);
@foreach (var item in items) {
- @item.Name
@traverse(item)
}
}
@traverse(@Model.AncestorOrSelf())
Related links
@if (Model.Links.Count() != 0)
{