如何在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);

如何在c#中获取Dataset表列数据类型

   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)){}