Column rename

This article contains example code that shows the usage of the ColumnRename component.

Upper case property names

This example shows how to set up a general renaming function that converts the property names from lower into uppercase.

public void WritingRenamedIntoDatabase() {
    DropTableTask.DropIfExists(SqlConnection, "RenameExampleDest");
        new TableDefinition("RenameExampleDest") {
            Columns = new List<TableColumn>() {
                    new TableColumn("COL1", "VARCHAR(100)"),
                    new TableColumn("COL2", "VARCHAR(100)")

    var source = new DbSource(SqlConnection);
    source.Sql = "SELECT 'A' as col1, 'Test' as col2";
    var dest = new DbDestination(SqlConnection, "RenameExampleDest");
    var upperCaseRename = new ColumnRename();
    upperCaseRename.RenameFunc = name => name.ToUpper();

    Assert.Equal(1, RowCountTask.Count(SqlConnection, "RenameExampleDest"));

Renaming with attribute

This example show how to use the RenameColumn attribute.

public class MyInputRow
    public int Col1 { get; set; }
    public string Col2 { get; set; }

public void RenamingWithAttributes() {
    var source = new MemorySource<MyInputRow>();
    var input = new MyInputRow() {
        Col1 = 1,
        Col2 = "Test",

    var map = new ColumnRename<MyInputRow>();
    var dest = new MemoryDestination();


    dynamic output = dest.Data.First();
    IDictionary<string,object> outputDict = dest.Data.First();
    Console.WriteLine("Does property Col1 still exists?" + outputDict.ContainsKey("Col1"));
    Console.WriteLine("Does property Col2 still exists?" + outputDict.ContainsKey("Col2"));
    Console.WriteLine("Does property NewCol1 now exists?" + outputDict.ContainsKey("NewCol1"));
    Console.WriteLine("Does property NewCol2 still exists?" + outputDict.ContainsKey("NewCol2"));
    Console.WriteLine("NewCol1: " + output.NewCol1 + " NewCol2: " + output.NewCol2);

        Does property Col1 still exists?False
        Does property Col2 still exists?False
        Does property NewCol1 now exists?True
        Does property NewCol2 still exists?True
        NewCol1: 1 NewCol2: Test