Per Nergård
Jan 24, 2014
(1 votes)

Search and property with backing type

I guess that everybody is familiar with the custom property for editing the metakeyword property in the Alloy templates.

I assume that there are at least a few EPiServer 7 sites out there that uses it, and also doesn’t use Find or any other soution for handling search.

We discovered that if using that custom property which is nice for the editors, have the drawback that the keywords entered isn’t searchable (I guess it doesn’t get indexed) even if you decorate the property with the [Searchable] attribute.

Luckily it’s an easy fix. Just override the ToString method in the backing type like below and the keywords will be searchable.

public override string ToString()
    if (Value != null)
        return string.Join(",", List);
        return string.Empty;

Jan 24, 2014


Santosh Achanta
Santosh Achanta Feb 17, 2014 02:01 AM

Good one, thanks Per!

Santosh Achanta
Santosh Achanta Feb 18, 2014 12:01 AM

Good to have a null check before joining otherwise, when you try to publish a page that has meta keywords empty, will throw null reference exception.

Feb 18, 2014 08:40 AM

@Santosh: I thought I hade published the code with the null check that I added. Blog post updated.

Gayathri Saravanan
Gayathri Saravanan Mar 18, 2014 04:00 PM

Good idea...

Please login to comment.
Latest blogs
Optimizely SendGrid SMTP host is deprecated

SendGrid is a services for sending email that is included in Optimizely DXP. Previously was the recommended SMTP server to use,...

Tomas Hensrud Gulla | Dec 4, 2022 | Syndicated blog

Hosting Optimizely CMS 12 on Docker Engine

Since Optimizely CMS can now be deployed as a Docker container, here is a demonstration of building, running and scaling an Optimizely CMS 12 site ...

Stefan Holm Olsen | Dec 4, 2022 | Syndicated blog

How to use CacheTagHelper with content areas in Optimizely CMS 12

I might be going out on a limb here - if you have a better solution, feel very free to share it!  Upgrading your Optimizely web application from .N...

Andreas J | Dec 2, 2022

The 1001st Piece in your 1000 Piece Puzzle: .NET Default Interface Functions

I was recently working with a client who wanted a reasonably large subsystem added to Optimizely that would add automated management to their...

Greg J | Nov 28, 2022 | Syndicated blog