Automatically intern contentType Alias and propertyType Alias when querying the database to save on memory and speed up comparisons.

This commit is contained in:
nzdev
2021-07-13 19:55:45 +12:00
committed by Sebastiaan Janssen
parent 54b4d6f8d1
commit 6f8749bc52
2 changed files with 5 additions and 2 deletions

View File

@@ -9,6 +9,7 @@ namespace Umbraco.Core.Persistence.Dtos
internal class ContentTypeDto
{
public const string TableName = Constants.DatabaseSchema.Tables.ContentType;
private string _alias;
[Column("pk")]
[PrimaryKeyColumn(IdentitySeed = 700)]
@@ -21,7 +22,7 @@ namespace Umbraco.Core.Persistence.Dtos
[Column("alias")]
[NullSetting(NullSetting = NullSettings.Null)]
public string Alias { get; set; }
public string Alias { get => _alias; set => _alias = value == null ? null : string.Intern(value); }
[Column("icon")]
[Index(IndexTypes.NonClustered)]

View File

@@ -10,6 +10,8 @@ namespace Umbraco.Core.Persistence.Dtos
[ExplicitColumns]
internal class PropertyTypeDto
{
private string _alias;
[Column("id")]
[PrimaryKeyColumn(IdentitySeed = 100)]
public int Id { get; set; }
@@ -29,7 +31,7 @@ namespace Umbraco.Core.Persistence.Dtos
[Index(IndexTypes.NonClustered, Name = "IX_cmsPropertyTypeAlias")]
[Column("Alias")]
public string Alias { get; set; }
public string Alias { get => _alias; set => _alias = value == null ? null : string.Intern(value); }
[Column("Name")]
[NullSetting(NullSetting = NullSettings.Null)]