示例#1
0
        protected TSelf CustomizeValues <TProperty>(Values <TProperty> values, ValuesCustomizer <TProperty> customizer)
        {
            if (values == null)
            {
                throw new ArgumentNullException(nameof(values));
            }
            if (customizer == null)
            {
                throw new ArgumentNullException(nameof(customizer));
            }

            customizer.Invoke(values);
            return((TSelf)this);
        }
        protected TSelf CustomizeChildren <TProperty, TBuilder>(Children <TProperty, TBuilder, TResult> children,
                                                                ValuesCustomizer <TProperty, TBuilder> customizer)
            where TBuilder : IBuilder <TProperty>
        {
            if (children == null)
            {
                throw new ArgumentNullException(nameof(children));
            }
            if (customizer == null)
            {
                throw new ArgumentNullException(nameof(customizer));
            }

            customizer.Invoke(children);

            return((TSelf)this);
        }
示例#3
0
 public ProductBuilder WithTags(ValuesCustomizer <string> customizer) => CustomizeValues(_tags, customizer);
示例#4
0
 public OrderBuilder WithOrderLines(ValuesCustomizer <OrderLine, OrderLineBuilder> customizer) => CustomizeChildren(_orderLines, customizer);