/// <summary> /// Initializes a new instance of the <see cref="TableSchemaFactory"/> class. /// </summary> public TableSchemaFactory( ITableNameFactory tableNameFactory, IColumnNameFactory columnNameFactory) { Ensure.NotNull(tableNameFactory, nameof(tableNameFactory)); Ensure.NotNull(columnNameFactory, nameof(columnNameFactory)); this.tableNameFactory = tableNameFactory; this.columnNameFactory = columnNameFactory; }
/// <summary> /// Sets the method used to get the column name from a property. /// </summary> public static void SetColumnNameFactory(IColumnNameFactory factory) { Ensure.NotNull(factory, nameof(factory)); SetCurrent(c => c.WithSchemaFactory(c.SchemaFactory.WithColumnNameFactory(factory))); }
/// <summary> /// Creates a new <see cref="TableSchemaFactory"/> which generates column names with the <paramref name="factory"/>. /// </summary> public TableSchemaFactory WithColumnNameFactory(IColumnNameFactory factory) { return(new TableSchemaFactory(this.tableNameFactory, factory)); }