Browse Source

Added HasExtraPropertiesObjectExtendingExtensions

pull/3401/head
Halil İbrahim Kalkan 6 years ago
parent
commit
8ea1c34cb9
  1. 5
      framework/src/Volo.Abp.AutoMapper/AutoMapper/AbpAutoMapperExtensibleDtoExtensions.cs
  2. 22
      framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/HasExtraPropertiesObjectExtendingExtensions.cs

5
framework/src/Volo.Abp.AutoMapper/AutoMapper/AbpAutoMapperExtensibleDtoExtensions.cs

@ -24,7 +24,10 @@ namespace AutoMapper
foreach (var property in properties)
{
result[property.Name] = source.ExtraProperties[property.Name];
if (source.ExtraProperties.ContainsKey(property.Name))
{
result[property.Name] = source.ExtraProperties[property.Name];
}
}
return result;

22
framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/HasExtraPropertiesObjectExtendingExtensions.cs

@ -0,0 +1,22 @@
using Volo.Abp.Data;
namespace Volo.Abp.ObjectExtending
{
public static class HasExtraPropertiesObjectExtendingExtensions
{
public static void MapExtraPropertiesTo<TSource, TDestination>(this TSource source, TDestination destination)
where TSource : IHasExtraProperties
where TDestination : IHasExtraProperties
{
var extensionPropertyInfos = ObjectExtensionManager.Instance.GetProperties<TSource>();
foreach (var extensionPropertyInfo in extensionPropertyInfos)
{
if (source.ExtraProperties.ContainsKey(extensionPropertyInfo.Name))
{
destination.ExtraProperties[extensionPropertyInfo.Name] = source.ExtraProperties[extensionPropertyInfo.Name];
}
}
}
}
}
Loading…
Cancel
Save