Skip to content

Commit 0600df4

Browse files
Fix EntityContainer.GetUdi() for member type containers (#20840)
Fix EntityContainer.GetUdi() for member type containers
1 parent 06c566c commit 0600df4

File tree

3 files changed

+10
-5
lines changed

3 files changed

+10
-5
lines changed

src/Umbraco.Core/Extensions/UdiGetterExtensions.cs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,10 @@ public static GuidUdi GetUdi(this EntityContainer entity)
6464
{
6565
entityType = Constants.UdiEntityType.DataTypeContainer;
6666
}
67+
else if (entity.ContainedObjectType == Constants.ObjectTypes.DocumentBlueprint)
68+
{
69+
entityType = Constants.UdiEntityType.DocumentBlueprintContainer;
70+
}
6771
else if (entity.ContainedObjectType == Constants.ObjectTypes.DocumentType)
6872
{
6973
entityType = Constants.UdiEntityType.DocumentTypeContainer;
@@ -72,9 +76,9 @@ public static GuidUdi GetUdi(this EntityContainer entity)
7276
{
7377
entityType = Constants.UdiEntityType.MediaTypeContainer;
7478
}
75-
else if (entity.ContainedObjectType == Constants.ObjectTypes.DocumentBlueprint)
79+
else if (entity.ContainedObjectType == Constants.ObjectTypes.MemberType)
7680
{
77-
entityType = Constants.UdiEntityType.DocumentBlueprintContainer;
81+
entityType = Constants.UdiEntityType.MemberTypeContainer;
7882
}
7983
else
8084
{

src/Umbraco.Core/Models/EntityContainer.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ public sealed class EntityContainer : TreeEntityBase, IUmbracoEntity
1010
private static readonly Dictionary<Guid, Guid> ObjectTypeMap = new()
1111
{
1212
{ Constants.ObjectTypes.DataType, Constants.ObjectTypes.DataTypeContainer },
13+
{ Constants.ObjectTypes.DocumentBlueprint, Constants.ObjectTypes.DocumentBlueprintContainer },
1314
{ Constants.ObjectTypes.DocumentType, Constants.ObjectTypes.DocumentTypeContainer },
1415
{ Constants.ObjectTypes.MediaType, Constants.ObjectTypes.MediaTypeContainer },
1516
{ Constants.ObjectTypes.MemberType, Constants.ObjectTypes.MemberTypeContainer },
16-
{ Constants.ObjectTypes.DocumentBlueprint, Constants.ObjectTypes.DocumentBlueprintContainer },
1717
};
1818

1919
/// <summary>
@@ -83,7 +83,7 @@ public static Guid GetContainerObjectType(Guid containedObjectType)
8383
public static Guid GetContainedObjectType(Guid containerObjectType)
8484
{
8585
Guid contained = ObjectTypeMap.FirstOrDefault(x => x.Value == containerObjectType).Key;
86-
if (contained == null)
86+
if (contained == default)
8787
{
8888
throw new ArgumentException("Not a container object type.", nameof(containerObjectType));
8989
}

tests/Umbraco.Tests.UnitTests/Umbraco.Core/Extensions/UdiGetterExtensionsTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,10 @@ namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Core.Extensions;
1616
public class UdiGetterExtensionsTests
1717
{
1818
[TestCase(Constants.ObjectTypes.Strings.DataType, "6ad82c70-685c-4e04-9b36-d81bd779d16f", "umb://data-type-container/6ad82c70685c4e049b36d81bd779d16f")]
19+
[TestCase(Constants.ObjectTypes.Strings.DocumentBlueprint, "6ad82c70-685c-4e04-9b36-d81bd779d16f", "umb://document-blueprint-container/6ad82c70685c4e049b36d81bd779d16f")]
1920
[TestCase(Constants.ObjectTypes.Strings.DocumentType, "6ad82c70-685c-4e04-9b36-d81bd779d16f", "umb://document-type-container/6ad82c70685c4e049b36d81bd779d16f")]
2021
[TestCase(Constants.ObjectTypes.Strings.MediaType, "6ad82c70-685c-4e04-9b36-d81bd779d16f", "umb://media-type-container/6ad82c70685c4e049b36d81bd779d16f")]
21-
[TestCase(Constants.ObjectTypes.Strings.DocumentBlueprint, "6ad82c70-685c-4e04-9b36-d81bd779d16f", "umb://document-blueprint-container/6ad82c70685c4e049b36d81bd779d16f")]
22+
[TestCase(Constants.ObjectTypes.Strings.MemberType, "6ad82c70-685c-4e04-9b36-d81bd779d16f", "umb://member-type-container/6ad82c70685c4e049b36d81bd779d16f")]
2223
public void GetUdiForEntityContainer(Guid containedObjectType, Guid key, string expected)
2324
{
2425
EntityContainer entity = new EntityContainer(containedObjectType)

0 commit comments

Comments
 (0)