|
|
|
@ -44,6 +44,42 @@ namespace Volo.Abp.ObjectExtending |
|
|
|
); |
|
|
|
} |
|
|
|
|
|
|
|
public static ObjectExtensionManager MapEfCoreProperty<TEntity, TProperty>( |
|
|
|
[NotNull] this ObjectExtensionManager objectExtensionManager, |
|
|
|
[NotNull] string propertyName, |
|
|
|
[CanBeNull] Action<EntityTypeBuilder, PropertyBuilder> entityTypeAndPropertyBuildAction = null) |
|
|
|
where TEntity : IHasExtraProperties, IEntity |
|
|
|
{ |
|
|
|
return objectExtensionManager.MapEfCoreProperty( |
|
|
|
typeof(TEntity), |
|
|
|
typeof(TProperty), |
|
|
|
propertyName, |
|
|
|
entityTypeAndPropertyBuildAction |
|
|
|
); |
|
|
|
} |
|
|
|
|
|
|
|
public static ObjectExtensionManager MapEfCoreProperty( |
|
|
|
[NotNull] this ObjectExtensionManager objectExtensionManager, |
|
|
|
[NotNull] Type entityType, |
|
|
|
[NotNull] Type propertyType, |
|
|
|
[NotNull] string propertyName, |
|
|
|
[CanBeNull] Action<EntityTypeBuilder, PropertyBuilder> entityTypeAndPropertyBuildAction = null) |
|
|
|
{ |
|
|
|
Check.NotNull(objectExtensionManager, nameof(objectExtensionManager)); |
|
|
|
|
|
|
|
return objectExtensionManager.AddOrUpdateProperty( |
|
|
|
entityType, |
|
|
|
propertyType, |
|
|
|
propertyName, |
|
|
|
options => |
|
|
|
{ |
|
|
|
options.MapEfCore( |
|
|
|
entityTypeAndPropertyBuildAction |
|
|
|
); |
|
|
|
} |
|
|
|
); |
|
|
|
} |
|
|
|
|
|
|
|
public static void ConfigureEfCoreEntity( |
|
|
|
[NotNull] this ObjectExtensionManager objectExtensionManager, |
|
|
|
[NotNull] EntityTypeBuilder typeBuilder) |
|
|
|
@ -73,6 +109,7 @@ namespace Volo.Abp.ObjectExtending |
|
|
|
|
|
|
|
var propertyBuilder = typeBuilder.Property(property.Type, property.Name); |
|
|
|
|
|
|
|
efCoreMapping.EntityTypeAndPropertyBuildAction?.Invoke(typeBuilder, propertyBuilder); |
|
|
|
efCoreMapping.PropertyBuildAction?.Invoke(propertyBuilder); |
|
|
|
} |
|
|
|
} |
|
|
|
|