From de4628f45098cb9735197cbd435fd6da82b447a4 Mon Sep 17 00:00:00 2001 From: James Jackson-South Date: Mon, 22 Jan 2018 20:58:15 +1100 Subject: [PATCH] Add perf explanation --- src/Umbraco.Core/ObjectExtensions.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Core/ObjectExtensions.cs b/src/Umbraco.Core/ObjectExtensions.cs index e4c9d94eba..1e3c75ee6d 100644 --- a/src/Umbraco.Core/ObjectExtensions.cs +++ b/src/Umbraco.Core/ObjectExtensions.cs @@ -718,8 +718,10 @@ namespace Umbraco.Core if (AssignableTypeCache.TryGetValue(key, out bool canConvert)) { return canConvert; - } - + } + + // "object is" is faster than "Type.IsAssignableFrom. + // We can use it to very quickly determine whether true/false if (input is IConvertible && target.IsAssignableFrom(source)) { return AssignableTypeCache[key] = true;