protected virtual string Render(Action <Request> action, string templateMarkup, string pageMarkup) { ExoWeb.Model(new { request = ExoWeb.Query <Request>(null) }, (Request request) => { request.Description = "Something doesn't work"; request.User = new User() { UserName = "******", IsActive = true }; request.User.Requests.Add(request); if (action != null) { action(request); } }); if (!string.IsNullOrEmpty(templateMarkup)) { Accessors.AddTemplates(templateMarkup); } var outputMarkup = Accessors.Render(pageMarkup); // Wrap the xml in a container to provide namespace aliases for supported controls var xml = @"<output xmlns:sys='javascript:Sys' xmlns:dataview='javascript:Sys.UI.DataView' xmlns:content='javascript:ExoWeb.UI.Content' xmlns:template='javascript:ExoWeb.UI.Template' xmlns:toggle='javascript:ExoWeb.UI.Toggle' xmlns:behavior='javascript:ExoWeb.UI.Behavior' xmlns:html='javascript:ExoWeb.UI.Html' xmlns:togglegroup='javascript:ExoWeb.UI.ToggleGroup'>" + outputMarkup + "</output>"; return(PrettyPrintXml(xml)); }