Take the community feedback survey now.

Per Nergård (MVP)
Mar 26, 2013
  10342
(4 votes)

Plugin for deleting missing properties

When developing your site and refactoring property names on page- and block types you can end up with some “missing” properties when you view them in admin mode.

Per Bjurstrom has a nice blog post about how typed models are synchronized .

If you change a property name on your page types base class you have to go to each page type in admin mode, select that property and decide if you want to delete it or save it disconnected from code.

Doing repetitive tasks is boring and things tend to get missed Ler

I think that the admin mode lacks an easy way to see all missing  properties and have the possibility to delete them.

So I decided to create a small plugin for the task.

The result looks like this:

 

Missingproperties

 

Just tick the delete checkbox for the properties you want to delete and hit the delete button.

You can download the code over at the code section.

Mar 26, 2013

Comments

Jeff Wallace
Jeff Wallace Mar 26, 2013 10:11 PM

Nice work. I've been doing a bit of property deletion the past week and this will be a nice way to streamline both the finding and the deleting of them in the future.

Apr 20, 2013 02:33 AM

Hey Per,

Noticed a small issue in your code, you are continuing to bind the properties grid view when the page posts back, I am using this awesome admin plugin, but modified the code as follows:

Moved:
this._contentTypeModelRepository = ServiceLocator.Current.GetInstance();
into the Setup() routine

Added:
if (!Page.IsPostBack)
{
Setup();
}

in the OnLoad

Per Nergård (MVP)
Per Nergård (MVP) Apr 22, 2013 07:46 AM

@Mike: Oops! Thanks for the update I will update the code.

Ayo
Ayo Feb 21, 2018 11:36 AM

This is exactly what I'm looking for but this post is from 2013, I am using episerver 10 will this plugin work with more recent versions of EpiServer? 

Is there not a built in way to do this? This is my first Episerver project, I come from an Umbraco Background, it seems very silly that this is not an option. 

If you have 100s of block types, mulitple enviroments, lots of refactoring to do means its error prone.... any ideas?

Per Nergård (MVP)
Per Nergård (MVP) Feb 21, 2018 01:31 PM

No built in way to do this. I think it should work pretty out of the box. There might be some changes to which repository is used to get and delete properties. But I know we have it in projects based on Episerver 10.

Peter Bennington
Peter Bennington Oct 4, 2019 03:16 PM

Hi Per. I was just wondering if the code for the original admin menu is still available? The one where you can view the properties that are missing and choose to delete them, rather than automatically deleting them on startup as you do in your other post https://world.episerver.com/blogs/Per-Nergard/Dates/2016/4/missing-properties-initializationmodule/

Scott Reed
Scott Reed Sep 17, 2020 11:48 AM

Hey Per, was looking for this plugin but the link doesn't work. Is it still about?

Per Nergård (MVP)
Per Nergård (MVP) Nov 17, 2020 10:55 PM

Scott: I havent got a message about your comment.  https://github.com/PNergard/Nergard.EPi.Plugins.MissingProperties

If thats to old just send me a message in the EMVP forums and I will mail you the code.

Please login to comment.
Latest blogs
Running Optimizely CMS 12 on .NET 10 in Azure

Upgrade your Optimizely CMS website to .NET 10!

Tomas Hensrud Gulla | Nov 21, 2025 |

Experimentation Evolution with AI (Masterclass Recap)

If you think you are not using AI in your experimentation program you are probably wrong. Ever asked an AI to rephrase a hypothesis or brainstorm a...

Polly Walton | Nov 21, 2025

Effortlessly Configurable Custom Fields for Scheduled Jobs in Optimizely with PlugInProperty

Optimizely CMS lets developers add job parameters—such as textboxes and checkboxes—directly to the scheduled job admin UI using PlugInProperty. Wit...

Ravindra S. Rathore | Nov 21, 2025 |

Optimizely Package Explorer: Now With Extra Superpowers

If you’ve ever opened a .episerverdata file and asked “What is in here?” (guilty as charged) — then this is your moment. We’ve given our open-sourc...

Allan Thraen | Nov 20, 2025 |