From 5b2212829c30fdc57e569e5a31273dd4e679c253 Mon Sep 17 00:00:00 2001 From: Shannon Date: Wed, 1 Feb 2017 13:02:22 +1100 Subject: [PATCH] Small performance change which makes a fairly large impact when rebuilding very large indexes. --- src/UmbracoExamine/UmbracoContentIndexer.cs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/UmbracoExamine/UmbracoContentIndexer.cs b/src/UmbracoExamine/UmbracoContentIndexer.cs index e7df641122..0f3779034c 100644 --- a/src/UmbracoExamine/UmbracoContentIndexer.cs +++ b/src/UmbracoExamine/UmbracoContentIndexer.cs @@ -709,15 +709,16 @@ namespace UmbracoExamine // Get all user data that we want to index and store into a dictionary foreach (var field in IndexerData.UserFields) { - if (e.Fields.ContainsKey(field.Name)) + string fieldVal; + if (e.Fields.TryGetValue(field.Name, out fieldVal)) { //check if the field value has html - if (XmlHelper.CouldItBeXml(e.Fields[field.Name])) + if (XmlHelper.CouldItBeXml(fieldVal)) { //First save the raw value to a raw field, we will change the policy of this field by detecting the prefix later - e.Fields[RawFieldPrefix + field.Name] = e.Fields[field.Name]; + e.Fields[RawFieldPrefix + field.Name] = fieldVal; //now replace the original value with the stripped html - e.Fields[field.Name] = DataService.ContentService.StripHtml(e.Fields[field.Name]); + e.Fields[field.Name] = DataService.ContentService.StripHtml(fieldVal); } } }