public ValueArrayEntityProperty(Type implementationType, string propertyName, int position, ValueArrayFactory <TValue> valueFactory, ValueSliceFactory valueSliceFactory) { _position = position; _valueFactory = valueFactory; _valueSliceFactory = valueSliceFactory; _writeProperty = new WriteProperty <TEntity, ValueArray <TValue> >(implementationType, propertyName); }
public override void Apply(IEntityMapBuilder <TEntity, TSchema> builder) { ValueArrayFactory <TValue> factory = fragment => new EntityValueArray <TValue>(fragment, _valueConverter); var mapper = new ValueArrayEntityProperty <TEntity, TValue>(builder.ImplementationType, Property.Name, Position, factory, Single); ITextSliceProvider <TEntity> provider = new ValueArraySliceProvider <TEntity, TValue>(Property, _valueFormatter); builder.Add(mapper, provider); }