diff --git a/framework/src/Volo.Abp.AutoMapper/AutoMapper/AbpAutoMapperExtensibleDtoExtensions.cs b/framework/src/Volo.Abp.AutoMapper/AutoMapper/AbpAutoMapperExtensibleDtoExtensions.cs index 91daadf350..e277fbf202 100644 --- a/framework/src/Volo.Abp.AutoMapper/AutoMapper/AbpAutoMapperExtensibleDtoExtensions.cs +++ b/framework/src/Volo.Abp.AutoMapper/AutoMapper/AbpAutoMapperExtensibleDtoExtensions.cs @@ -22,6 +22,7 @@ namespace AutoMapper : new Dictionary(extraProps); var objectExtension = ObjectExtensionManager.Instance.GetOrNull(); + if (objectExtension != null) { foreach (var property in objectExtension.GetProperties()) diff --git a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ObjectExtensionInfo.cs b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ObjectExtensionInfo.cs index ffe1c8b03c..19f53c4b75 100644 --- a/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ObjectExtensionInfo.cs +++ b/framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ObjectExtensionInfo.cs @@ -8,7 +8,7 @@ namespace Volo.Abp.ObjectExtending { public Type Type { get; } - public Dictionary Properties { get; } + protected Dictionary Properties { get; } public Dictionary Configuration { get; } @@ -19,7 +19,12 @@ namespace Volo.Abp.ObjectExtending Configuration = new Dictionary(); } - public ObjectExtensionPropertyInfo AddOrUpdateProperty( + public virtual bool HasProperty(string propertyName) + { + return Properties.ContainsKey(propertyName); + } + + public virtual ObjectExtensionPropertyInfo AddOrUpdateProperty( string propertyName, Action configureAction = null) { @@ -33,7 +38,7 @@ namespace Volo.Abp.ObjectExtending return propertyInfo; } - public ImmutableList GetProperties() + public virtual ImmutableList GetProperties() { return Properties.Values.ToImmutableList(); }