Johan Björnfot
Dec 4, 2017
  6663
(7 votes)

EPiServer.ServiceLocation.StructureMap 2

We have now released version 2 of EPiServer.ServiceLocation.StructureMap. This version has a dependency against version 4.5.2 of the unsigned version of StructureMap. According to release notes in StructureMap documentation the newer version contains (among other things) performance improvments. 

There are some nuget issues that could be good to know about when updating EPiServer.ServiceLocation.StructureMap. Nuget will not remove references to the packages  structuremap-signed and structuremap.web-signed used by version 1 of EPiServer.ServiceLocation.StructureMap during update. So a recommendation after updating is to uninstall those packages. Also any existing binding redirects to the signed version of StructureMap assembly will remain in web.config.

An alternative to update package is to first uninstall package EPiServer.ServiceLocation.StructureMap, make sure to select option "Remove dependencies". If you have an dependency to package EPiServer.CMS you must also select option "Force uninstall". Then install version 2 of package EPiServer.ServiceLocation.StructureMap. Even in this case there might be old binding redirects left in web.config.

The package has been tested with CMS and we are currently testing it with other products such as Commerce and Find, to make sure it is compatible with other products as well.

Dec 04, 2017

Comments

Henrik Fransas
Henrik Fransas Dec 4, 2017 12:22 PM

Thanks for the info Johan!!

Johan Book
Johan Book Dec 12, 2017 09:09 AM

When is it safe to use this with Commerce?

Johan Book
Johan Book Jan 10, 2018 11:18 AM

Gotcha: If you uninstall the old structuremap packages after EPiServer.ServiceLocation.StructureMap you need to reinstall Structuremap 4.5.2 after that. So a recommendation is to uninstall the old structuremap packages before updating Episerver.

Per Jungnelius
Per Jungnelius Jan 30, 2018 11:28 AM

This is currently not compatible with ImageVault. ImageVault.Client 5.7.1 has a dependency via ImageVault.Common.Lib.StructureMap to the structuremap-signed package. So in order to run ImageVault.Client 5.7.1 you need to stay on EPiServer.ServiceLocation.StructureMap 1.

Johan Book
Johan Book Jan 3, 2020 11:35 PM

It seems someone didn't read these instructions before doing Foundation... Both structuremap.web-signed and structuremap-signed is still referenced in https://github.com/episerver/Foundation/blob/develop/src/Foundation/packages.config

Please login to comment.
Latest blogs
Four database surprises when upgrading from CMS 11 to CMS 13

We're in the middle of migrating a fairly large site from CMS 11 / .NET Framework to CMS 13 / .NET 10. The code migration is one thing, but the...

Per Nergård (MVP) | Jun 12, 2026

Designing ODP Real-Time Audiences for CMS Personalization and Experimentation

A practical look at when to use ODP Real-Time Audiences, how to build them, and how they fit into CMS personalization and Feature Experimentation.

Wojciech Seweryn | Jun 11, 2026 |

Unlock Experimentation with Content Variations in CMS 13

Part 1 argued that Content Variations is the CMS 13 feature that didn't get the keynote but should have. This is the follow-up: wiring those...

Piotr | Jun 11, 2026

umage.ai is now an Optimizely Silver Solution Partner

umage.ai is officially an Optimizely Silver Solution Partner. The badge formalises an alignment that was already there — agent-driven Optimizely wo...

Allan Thraen | Jun 10, 2026 |

Why Optimizely's MCP Servers Offering Matters

MCP (Model Context Protocol) is what enables, connecting AI agents directly to enterprise tools. With Optimizely OPAL and Optimizely MCP servers,...

K Khan | Jun 9, 2026

A day in the life of an Optimizely OMVP: Managing Graph search: the native portal and the community plugin

Optimizely Graph has quietly become the search engine sitting underneath most new Optimizely builds. It ships with CMS 13, it's the answer to "what...

Graham Carr | Jun 9, 2026