A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More

Vincent Baaij
Dec 13, 2017
  4004
(3 votes)

Upgrading the AlloyDemoKit to Episerver 11

Update 23-1-2018

With update 198 we are now at a point that we can merge the V11 branch into the master! The update brings along A/B testing, so we now have everything we need. The last commit in the master branch has been tagged with a V10 label. If the need arrises to go back, you should be able to find it.

Update 16-1-2018

After update 197 the following package has been added to the demo again:

  • EPIServer.TinyMCESpellChecker (1.3.0)

Update 29-12-2017

After update 194 the following functionality is once again available in the demo kit in the v11 branch:

  • Episerver Self-Optimizing Block (2.4.0)
  • PowerSlice (3.0.0)

Custom Powerslice samples are available in the code in the Business\PowerSlice folder. Remember that you need to create your own Find index to get this to work.

Also as part of this update the EPiServer.VisitorGroupsCriteriaPack (2.0.0) package has been added back to the solution.

In making this a real version 11 solution, I have replaced (and removed) all the older XForms forms with 'new' forms.

The only thing missing to merge this in the master branch is the A/B testing functionality. This will probably come somewhere soon in the new year.

Update 20-12-2017

The following packages have now been added to the demo again:

  • BVN.404Handler
  • Episerver.GoogleMapsEditor
  • Geta.SEO.Sitemaps

Because of the upgrade to Episerver.CMS.UI to 11.2, the MenuPin functionality is now available ou-of-the-box. See this post for more information. Through code in MenuPin, we were able to adjust the styling of the Visitor Groups section. With the inclusion of MenuPin in Episerver, this code has now disappeared. I copied the required cocde over to the demo kit so the Visitor Groups styling is now looking better again.

The target framework for the projects is now .NET Framework 4.6.2

---

A new branch has been added to the AlloyDemoKit repository on GitHub. In this branch I have updated the site to Episerver CMS 11. Until all (or at least the most important) packages used by the demo kit are available for this new version, this branch will co-exist as a separate branch besides the master branch. The site works and can most certainly be used for demo scenarios, but not all functionality is there yet so be aware of that!

To get the demo kit up an running on version 11, I first made a list of all the packages that are not (yet) available or compatible. As more package become available, they will be added back in of course. The following lists shows all the incompatible packages. Each package links to the coresponding page in the Episerver NuGet site:

Some remarks apply to this list:

*Although the package says it has no dependencies, it will not work on Episerver 11. This is because of the separation of ASP.NET specific code into it's own assemblies and namespaces. A version 11 compatible package is released and added to the solution. See this post and this package for more information
**The MenuPin functionallity will be integrated into Episerver in an upcoming release
***Although the package says it has a dependency on EPiServer.CMS.UI (≥ 10.0.2), it will not work on Episerver 11. This is because of the separation of ASP.NET specific code into it's own assemblies and namespaces. The repo on GitHub shows an version 11 package is in the works.

Besides the packages mentioned, A/B testing is not yet available.

The packages that do not have an alternative available have been uninstalled from the solution. If there is source code linked to such a package, it has been excluded for now. The number of necessary code changes was quite low. They have been described in several posts like this one already. I also checked the code against the recently released Alloy Template source code (see this blog for more information). This led to a lot of small changes, but at least the standard Alloy part is now up-to-date again.

With CMS 11 we also get an officially supported version of the Property Value List, as described in this blog post. This can be used for the Unique Selling Points property on the Product page type (this is now also how it works in the new Template I just mentioned). I incorporated this into the source. It did require some manual updates to the database to change the existing values of the property though. I also made the Meta Keyword property work in this way. This is not the case within the available Alloy Template source. I don't know why that is. Oh, and by the way, if keywords have been entered, they will now actually show up in the rendered HTML :).

I will update this post when new packages become available and are added back into the solution.

Hope this helps.

Dec 13, 2017

Comments

Please login to comment.
Latest blogs
Building simple Opal tools for product search and content creation

Optimizely Opal tools make it easy for AI agents to call your APIs – in this post we’ll build a small ASP.NET host that exposes two of them: one fo...

Pär Wissmark | Dec 13, 2025 |

CMS Audiences - check all usage

Sometimes you want to check if an Audience from your CMS (former Visitor Group) has been used by which page(and which version of that page) Then yo...

Tuan Anh Hoang | Dec 12, 2025

Data Imports in Optimizely: Part 2 - Query data efficiently

One of the more time consuming parts of an import is looking up data to update. Naively, it is possible to use the PageCriteriaQueryService to quer...

Matt FitzGerald-Chamberlain | Dec 11, 2025 |

Beginner's Guide for Optimizely Backend Developers

Developing with Optimizely (formerly Episerver) requires more than just technical know‑how. It’s about respecting the editor’s perspective, ensurin...

MilosR | Dec 10, 2025