C# 如何在C中获取数据集表列数据类型#
我有一个数据集,其中包含一个表,我想在该表上迭代循环 在循环中,我想检查第1列是否为日期类型。请转义该列并移到下一列。请帮助我C# 如何在C中获取数据集表列数据类型#,c#,C#,我有一个数据集,其中包含一个表,我想在该表上迭代循环 在循环中,我想检查第1列是否为日期类型。请转义该列并移到下一列。请帮助我 excelConnection = new OleDbConnection(connectionString); //Get the name of First Sheet excelConnection.Open(); excelSheet = excelConnection.GetOleDbSchemaTable(
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);
提前感谢。请尝试以下代码以获取数据集表列的数据类型:
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 (DataColumn dc in dt.Columns)
{
Console.WriteLine(dc.DataType);
}
数据集ds=新数据集();
DataTable dt=ds.表[0];
foreach(数据列dc在dt.列中)
{
Console.WriteLine(dc.DataType);
}
要检查数据类型,您还可以在循环中执行以下操作,即使对于其他数据类型也是如此
if(dc.DataType == typeof(System.Decimal))
{
}
else if (dc.DataType == typeof(System.DateTime))
{
}
else if (dc.DataType == typeof(System.String))
{
}
if(dc.DataType==typeof(System.Decimal))
{
}
else if(dc.DataType==typeof(System.DateTime))
{
}
else if(dc.DataType==typeof(System.String))
{
}@mlg我只有一个数据集和数据视图。有没有办法用它们来代替数据表?
foreach (DataColumn col in dt.Columns)
{
if (col.DataType == typeof(DateTime)) continue;
//Execute business logic for other columns
}