public void GetPropertyDisplayName() { //Arrange var person = CreatSut(); //Act var result = PropertyReflection .GetPropertyDisplayName <Person>(x => x.Address.Country.CountryName); //Assert Assert.Equal("AddressDetail.CountryDetail.CountryName", result); }
private DataTable ConvertToDataTable <T>(IEnumerable <T> data, params Expression <Func <T, object> >[] columnsFunc) { DataTable table = new DataTable(); foreach (var column in columnsFunc) { string columnName = PropertyReflection.GetPropertyDisplayName <T>(column); table.Columns.Add(columnName); } foreach (T obj in data) { DataRow row = table.NewRow(); for (int i = 0; i < table.Columns.Count; i++) { row[table.Columns[i].ColumnName] = PropertyReflection.GetPropertyValue <T>(obj, columnsFunc[i]); } table.Rows.Add(row); } return(table); }