Blog posts

This page lists all my blog posts chronologically (newest first).

Six tips for making a good outbound connector for InRiver iPMC

Dec 11, 2017 by Stefan Holm Olsen

From working on InRiver PIM projects, I have implemented a few custom outbound connectors. They would export catalogs to EPiServer Commerce, Demandware (now Salesforce Commerce Cloud) as well as Azure Blob Storage. In this post I give away six tips on implementing a good outbound connector for InRiver Product Marketing Cloud (iPMC).

On exporting product catalogs to Google or Facebook

Nov 26, 2017 by Stefan Holm Olsen

Digital marketers of today might want to work with dynamic product ads on platforms like Google and Facebook. This requires a machine readable product catalog file. To showcase how to make that data available, I created a tool for EPiServer Commerce, which generates and provides such a file.

Redis can be an EPiServer event broker too

Oct 16, 2017 by Stefan Holm Olsen

When EPiServer runs in a load-balanced environment, the servers rely on exchanging event messages. EPiServer supplies four event providers. This post is about implementing a new event provider, using Redis as a broker for remote event messages.

Bitcoins as a payment option in EPiServer Commerce

Oct 09, 2017 by Stefan Holm Olsen

I have heard a lot about Bitcoins and other cryptocurrencies. About what they are, what they can do and how much they will revolutionize payments and money transfers. So, as an experiment I decided to create an EPiServer Commerce plugin to accept payments in cryptocurrencies.

A custom exception handler for EPiServer pages

Aug 27, 2017 by Stefan Holm Olsen

Read about a way to generically handle exceptions so they show a friendly error message to visitors, and a detailed stack trace to certain user groups.

Adding dynamic HTML to property templates in EPiServer

Aug 05, 2017 by Stefan Holm Olsen

When developing websites, sometimes adding extra attributes to certain HTML tags is needed. This is about how to do that dynamically on EPiServer properties, extending the Display Templates.

Using AuthorizeAttribute for modules in a multi-tenancy web platform

Jul 16, 2017 by Stefan Holm Olsen

Imagine that you are developing a web platform (maybe even a SaaS product) to support multiple customers. It could be built as a multi-tenancy application, that offers a basic subscription and a variety of optional add-ons. How could authorization of access to each add-on be easily implemented?

Migration from Subversion (SVN) to Git

Jul 09, 2017 by Stefan Holm Olsen

I once did a big migration of an old Subversion (SVN) repository to a new Git repository, migrating all of the version history. This post is about how to do that.

Cache busting with ASP.Net MVC

Jul 03, 2017 by Stefan Holm Olsen

Whenever a webpage have links to pre-compiled frontend files, we as developers can make the web browsers, as well as proxy servers, cache (save) the files for a very long time. But what happens when you make changes to one of those files on the server? How can we do both extremely long caching and invalidate the cache at any time?