如何在c#中获取Dataset表列数据类型
本文关键字:Dataset 数据类型 获取 | 更新日期: 2023-09-27 18:17:47
我有一个包含1个表的数据集,我想在表上迭代循环。
在循环中,我想检查列1是否是日期类型,转义该列并移动到下一列。请帮帮我。
excelConnection = new OleDbConnection(connectionString);
//Get the name of First Sheet
excelConnection.Open();
excelSheet = excelConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
string sheetName = excelSheet.Rows[0]["TABLE_NAME"].ToString();
excelConnection.Close();
string query = "SELECT * FROM [" + sheetName + "]";
excelCommand = new OleDbCommand(query, excelConnection);
excelDataAdapter = new OleDbDataAdapter(excelCommand);
excelDataAdapter.Fill(excelData);
foreach (DataColumn col in dt.Columns)
{
if (col.DataType == typeof(DateTime)) continue;
//Execute business logic for other columns
}
尝试以下代码获取数据集表列的Datatype:
if (Dataset1.Tables[0].Columns[1].ColumnName.ToLower().Contains("date") || Dataset1.Tables[0].Columns[1].DataType.ToString() == "System.DateTime")
{
//Do work;
}
希望你喜欢。
试试这个:
<>之前DataSet ds = new DataSet();DataTable dt = ds.Tables[0];foreach (datacoll_dc在数据列中){Console.WriteLine (dc.DataType);}之前要检查数据类型,您还可以在循环中执行以下操作,甚至可以检查其他数据类型。
<>之前如果(dc =。DataType == typeof(System.Decimal)){}否则if (dc。DataType == typeof(System.DateTime)){}否则if (dc。DataType == typeof(System.String)){}