public override void Apply(IEntityTranslateBuilder <TResult, TInput, TSchema> builder) { var translator = new SetPropertyTranslator <TResult, TProperty, TInput, TSchema>(builder.ImplementationType, ResultPropertyInfo, new StaticTranslatePropertyProvider <TProperty, TInput, TSchema>(_propertyValue)); builder.Add(ResultPropertyInfo.Name, translator); }
/// <summary> /// Replace all existing translators for the property with the specified translator /// </summary> /// <param name="builder"></param> /// <param name="propertyName"></param> /// <param name="translator"></param> /// <typeparam name="TResult"></typeparam> /// <typeparam name="TInput"></typeparam> /// <typeparam name="TSchema"></typeparam> public static void Replace <TResult, TInput, TSchema>(this IEntityTranslateBuilder <TResult, TInput, TSchema> builder, string propertyName, IPropertyTranslator <TResult, TInput, TSchema> translator) where TResult : TSchema where TInput : TSchema where TSchema : Entity { builder.Clear(propertyName); builder.Add(propertyName, translator); }
public override void Apply(IEntityTranslateBuilder <TResult, TInput, TSchema> builder) { var translator = new CopyValuePropertyTranslator <TResult, TValue, TInput, TSchema>(builder.ImplementationType, ResultPropertyInfo, InputPropertyInfo); builder.Add(ResultPropertyInfo.Name, translator); }