Skip to main content
Home  ›  Blog

30+ New Features in 2sxc 12.02

2sxc 12.02 introduces ca. 30 long awaited features and more Hybrid APIs for cross-Dnn/Oqtane Apps. 


  1. Views can now have their own Settings, Resources, custom Identifier and Icon
  2. Global Settings and Resources object automatically merges View- and App-Settings
  3. ...using the new IDynamicStack object #2442 docs
  4. Major enhancement around DNN Search
  5. Improvements on Formulas
  6. Cross-Platform (hybrid) solution for setting page-titles, headers etc. (Dnn/Oqtane) #2433 docs
  7. Cross-Platform (hybrid) solution for activating browser features like jQuery

Hybrid Cross-Platform Page Control with IPageService

Since 2sxc Apps are meant to work on both Dnn and Oqtane, there is a unique challenge to bridge the differences of these platforms. For example, setting a header in Dnn uses very different APIs than in Oqtane.

To make this possible we're introducing the IPageService. The Razor code can then just request this service, tell it what changes are needed and the rest happens in the background. Use this for things like:

  1. Change Title, Description or Keywords
  2. Add Meta-header so the page or any other HTML
  3. Add Open-Graph headers
  4. Add JsonLD headers

We've also created extensive documentation for the IPageService and tutorials as well. 

View Enhancements

  1. Entire Edit-UI is now much simpler thanks to formulas
  2. Ability to set the Icon on a View #1724 and also #2430
  3. Ability to create View-Resources and Settings
  4. Dnn Search: A view can now be configured to be non searchable #2436
  5. Dnn Search: A view can be configured to only index certain streams #2438
  6. Dnn Search: A view can configure a separate .cs file which contains search-index logic #2435

👉 Read more about this in the Blog Post on Views and in the Docs

Formulas Improvements

  1. The data object now also das a data.initial which contains the value in the field when the form was loaded #2429
  2. Context has an info context.debug which is true if the UI is in Debug-Mode #2428
  3. Standardized how to handle date-values #2446
  4. Performance Optimizations

👉 Read about this in the Formulas Docs

Razor / C# Enhancements

  1. New IDynamicStack object allows retrieving properties from multiple entities at once to stack settings/resources docs
  2. New Settings and Resources properties use this to stack View and App Settings/Resources
  3. The CmsContext now has a View property which gives some basic View infos like Name, Identity etc. docs
  4. AsDynamic now has an overload allowing multiple entities which will return an IDynamicStack
  5. New IPageService lets Razor broadcast changes to the page title/description/keywords and also set headers etc. cross-platform #2433


  1. Performance optimizations how DynamicEntities are created
  2. Text fields can now also show as monospace font #2439
  3. Content-Type and View-Icons can now use the placeholder [App:Path] to reference files in the App Folder #2430
  4. Create/Rename fields now blocks names which can cause trouble like Created #2445
  5. Field-Edit UI now shows old String-field configurations which affect the field and allows flushing #2427


In 12.02.01 we also got 2sxc to run on Oqtane 2.1 and created a short checklist for upgrades.

Hope You Love It

Hundreds of hours of work were put into developing this - and documentation!

Please leave some nice comments to show you care! 

Then proceed to download on the github releases

Love from Switzerland and Croatia
iJungleboy, Tonci, Petar

Daniel Mettler grew up in the jungles of Indonesia and is founder and CEO of 2sic internet solutions in Switzerland and Liechtenstein, an 20-head web specialist with over 800 DNN projects since 1999. He is also chief architect of 2sxc (see github), an open source module for creating attractive content and DNN Apps.

Read more posts by Daniel Mettler