diff --git a/src/Umbraco.Core/Models/Content.cs b/src/Umbraco.Core/Models/Content.cs index 39c4610cd8..6de1a9d909 100644 --- a/src/Umbraco.Core/Models/Content.cs +++ b/src/Umbraco.Core/Models/Content.cs @@ -21,7 +21,6 @@ namespace Umbraco.Core.Models private DateTime? _expireDate; private Dictionary _publishNames; - private static readonly Dictionary NoPublishNames = new Dictionary(); private static readonly Lazy Ps = new Lazy(); /// @@ -201,7 +200,7 @@ namespace Umbraco.Core.Models /// [IgnoreDataMember] - public IReadOnlyDictionary PublishNames => _publishNames ?? NoPublishNames; + public IReadOnlyDictionary PublishNames => _publishNames ?? NoNames; /// public string GetPublishName(int? languageId) @@ -238,6 +237,7 @@ namespace Umbraco.Core.Models return; } + if (_publishNames == null) return; _publishNames.Remove(languageId.Value); if (_publishNames.Count == 0) _publishNames = null; diff --git a/src/Umbraco.Core/Models/ContentBase.cs b/src/Umbraco.Core/Models/ContentBase.cs index 8ecc7f0039..9b6414e4c8 100644 --- a/src/Umbraco.Core/Models/ContentBase.cs +++ b/src/Umbraco.Core/Models/ContentBase.cs @@ -18,6 +18,7 @@ namespace Umbraco.Core.Models [DebuggerDisplay("Id: {Id}, Name: {Name}, ContentType: {ContentTypeBase.Alias}")] public abstract class ContentBase : TreeEntityBase, IContentBase { + protected static readonly Dictionary NoNames = new Dictionary(); private static readonly Lazy Ps = new Lazy(); private int _contentTypeId; @@ -124,7 +125,7 @@ namespace Umbraco.Core.Models [DataMember] public virtual IReadOnlyDictionary Names { - get => _names; + get => _names ?? NoNames; set { foreach (var (languageId, name) in value)