To get the data type for a specific column in a table:
[Assume: Entity support class name: providers and column name = "VendorID"]
string columnTypName = (context.Vendors.EntitySet.ElementType.Members["VendorID"].TypeUsage.EdmType).Name;
To dynamically create column names and column types :
[Parameter: tableName]
var columns = from meta in ctx.MetadataWorkspace.GetItems(DataSpace.CSpace) .Where(m => m.BuiltInTypeKind == BuiltInTypeKind.EntityType) from p in (meta as EntityType).Properties .Where(p => p.DeclaringType.Name == tableName) select new { colName = p.Name, colType = p.TypeUsage.EdmType.Name };
source share