11269: Make sure TemplateId is set correctly from cache (#11271)

This commit is contained in:
patrickdemooij9
2021-10-08 11:18:00 +02:00
committed by GitHub
parent 6aaa13b385
commit 4c08b44684
4 changed files with 21 additions and 17 deletions

View File

@@ -22,15 +22,22 @@ namespace Umbraco.Cms.Infrastructure.PublishedCache.DataSource
public ContentData ReadFrom(Stream stream)
{
var published = PrimitiveSerializer.Boolean.ReadFrom(stream);
var name = PrimitiveSerializer.String.ReadFrom(stream);
var urlSegment = PrimitiveSerializer.String.ReadFrom(stream);
var versionId = PrimitiveSerializer.Int32.ReadFrom(stream);
var versionDate = PrimitiveSerializer.DateTime.ReadFrom(stream);
var writerId = PrimitiveSerializer.Int32.ReadFrom(stream);
var templateId = PrimitiveSerializer.Int32.ReadFrom(stream);
return new ContentData
{
Published = PrimitiveSerializer.Boolean.ReadFrom(stream),
Name = PrimitiveSerializer.String.ReadFrom(stream),
UrlSegment = PrimitiveSerializer.String.ReadFrom(stream),
VersionId = PrimitiveSerializer.Int32.ReadFrom(stream),
VersionDate = PrimitiveSerializer.DateTime.ReadFrom(stream),
WriterId = PrimitiveSerializer.Int32.ReadFrom(stream),
TemplateId = PrimitiveSerializer.Int32.ReadFrom(stream),
Published = published,
Name = name,
UrlSegment = urlSegment,
VersionId = versionId,
VersionDate = versionDate,
WriterId = writerId,
TemplateId = templateId == 0 ? (int?)null : templateId,
Properties = _dictionaryOfPropertyDataSerializer.ReadFrom(stream), // TODO: We don't want to allocate empty arrays
CultureInfos = DefaultCultureVariationsSerializer.ReadFrom(stream) // TODO: We don't want to allocate empty arrays
};
@@ -44,10 +51,7 @@ namespace Umbraco.Cms.Infrastructure.PublishedCache.DataSource
PrimitiveSerializer.Int32.WriteTo(value.VersionId, stream);
PrimitiveSerializer.DateTime.WriteTo(value.VersionDate, stream);
PrimitiveSerializer.Int32.WriteTo(value.WriterId, stream);
if (value.TemplateId.HasValue)
{
PrimitiveSerializer.Int32.WriteTo(value.TemplateId.Value, stream);
}
PrimitiveSerializer.Int32.WriteTo(value.TemplateId ?? 0, stream);
_dictionaryOfPropertyDataSerializer.WriteTo(value.Properties, stream);
DefaultCultureVariationsSerializer.WriteTo(value.CultureInfos, stream);
}

View File

@@ -1,4 +1,4 @@
using System;
using System;
using Umbraco.Cms.Core.Models;
namespace Umbraco.Cms.Infrastructure.PublishedCache.DataSource