Quan Mai
Mar 27, 2019
visibility 5605
star star star star star
(6 votes)

New feature in Commerce 13.1: StringDictionary support for catalog content

When we introduced strongly typed content type support for catalog items in Commerce 7.5, some of the metafield types were left unsupported. One of them was StringDictionary. While it's not the most common metafield type, it is used by several customers and we get the questions about supporting it from time to time.

We have had to say no each time, until now!

Upcoming Commerce 13.1 will add support for StringDictionary metafield type for catalog content. If you already have a StringDictionary with name "StringDict" (yeah, it's a bad name, but let's be generic) in your FashionProduct metaclass, you can map it with a strongly typed property in your FashionProduct content type like this:

[BackingType(typeof(PropertyStringDictionary))]
 public virtual IDictionary<string, string> StringDict { get; set; }

BackingType attribute is required to indicate that the underlying metafield is StringDictionary. If you don't have a StringDict metafield of type StringDictionary already, Commerce will automatically create and assign it to the metaclass for you.

The support is at API level, we don't support editing StringDictionary property in Catalog UI yet, and it's unlikely to happen. However if you have code in your website that load MetaObjects to read the StringDictionary metafields, update them and save it back, you can now simply do it in an entirely "content way". Now you can load, delete and update the items in StringDict directly using content APIs as other property types.

Commerce 13.1 is a few weeks away from release. 

Mar 27, 2019

Comments

Praful Jangid
Praful Jangid Jun 23, 2019 05:23 PM

This sounds very useful. Will this be render as a property list or what?

error Please login to comment.
Latest blogs
Advanced Task Manager Gets a Big Update

One of the things I keep coming back to with Optimizely's content approval workflow is that it's solid at the individual level - you know a piece o...

Adnan Zameer | Jul 21, 2026 |

Parallel Development in Optimizely CMS SaaS: A Smarter Way to Register Components

📌 A note before you read: The approach described in this article is not a replacement for Optimizely’s recommended out-of-the-box component...

Vipin Banka | Jul 21, 2026

How I Deployed My Optimizely Content JS SDK Next.js App on Vercel (Hello Opti World)

📌 Scope: This post covers Optimizely CMS (SaaS) only, using the official content-js-sdk with Next.js 15 deployed to Vercel. This is a practitioner...

Kiran Patil | Jul 21, 2026 |

Finding Thomas Part 5 - The Closed Loop

Five weeks. Five layers. One Thomas. If you've followed this series from the start — thank you. If you're just landing here, the short version:...

Ritu Madan | Jul 20, 2026