Browse Source

Make `IsValueObject` check customizable.

pull/16204/head
maliming 3 years ago
parent
commit
74a85fd614
No known key found for this signature in database GPG Key ID: A646B9CB645ECEA4
  1. 9
      framework/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/EntityHelper.cs
  2. 4
      framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs

9
framework/src/Volo.Abp.Ddd.Domain/Volo/Abp/Domain/Entities/EntityHelper.cs

@ -123,10 +123,17 @@ public static class EntityHelper
return typeof(IEntity).IsAssignableFrom(type);
}
public static Func<Type, bool> IsValueObjectPredicate = type => typeof(ValueObject).IsAssignableFrom(type);
public static bool IsValueObject([NotNull] Type type)
{
Check.NotNull(type, nameof(type));
return typeof(ValueObject).IsAssignableFrom(type);
return IsValueObjectPredicate(type);
}
public static bool IsValueObject(object obj)
{
return obj != null && IsValueObject(obj.GetType());
}
public static void CheckEntity([NotNull] Type type)

4
framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs

@ -93,7 +93,7 @@ public class EntityHistoryHelper : IEntityHistoryHelper, ITransientDependency
}
var entityId = GetEntityId(entity);
if (entityId == null && changeType != EntityChangeType.Created && !(entity is ValueObject))
if (entityId == null && changeType != EntityChangeType.Created && !EntityHelper.IsValueObject(entity))
{
return null;
}
@ -151,7 +151,7 @@ public class EntityHistoryHelper : IEntityHistoryHelper, ITransientDependency
return keys.JoinAsString(",");
}
if (entityAsObj is ValueObject)
if (EntityHelper.IsValueObject(entityAsObj))
{
return null;
}

Loading…
Cancel
Save