在 C# 中为 Postgres 获取 table 字段的数据库数据类型的最佳和快速方法是什么?

What is the best and fast way to get database data type of table field in c# for Postgres?

我有代码:

MyDataAdapter.SelectCommand = MySelectCommand;
MyDataAdapter.Fill(MyDataTable);
MyDataGrid.ItemsSource = MyDataTable.DefaultView;
MyDataGrid.Columns.Add(MyDataGridTextColumn1);
MyDataGrid.Columns.Add(MyDataGridTextColumn2);
MyDataGrid.Columns.Add(MyDataGridTextColumn3);
...
MyDataGrid.Columns.Add(MyDataGridTextColumnXXX);

下一步我想根据他们的数据库数据类型格式化添加的列。但是MyDataGrid的构建是有时间限制的。怎么做最好最快?

MyDataTable.Columns[i].DataType.Name;

NpgsqlDataReader dr = MyDataAdapter.SelectCommand.ExecuteReader();
dr.GetDataTypeName(i);

其中 i - 感兴趣列的索引