Using the entityName as a string, you can get an instance of the entity as follows:
var entityType = (EntityType)Enum.Parse(typeof(EntityType), entityName, false);
var myEntity = GeneralEntityFactory.Create(entityType);
Having an instance of the Entity, you can use the following code to get an EntityField
var entityField1 = myEntity.Fields["Address"];
Then you can build the DynaicList ResultsetFields as follows
var fields = new ResultsetFields(n);
fields.DefineField(entityField1, 0);
...
And you can fetch it as follows:
DataAccessAdapter adapter = new DataAccessAdapter();
DataTable dynamicList = new DataTable();
adapter.FetchTypedList(fields, dynamicList, ...);