如何通过在DataTable中给出列名来获取行值

时间:2016-08-19 13:03:06

标签: c# datatable

当DataTable包含单行而没有迭代时,是否可以通过给出列名来获取行值。

foreach(DataRow row in dt.Rows)
{
    string strCity = row["City"].ToString();
}

Table

当我们只有一行时,我需要像下面这样的东西,

String cn=row["ColumnName"].ToString()

5 个答案:

答案 0 :(得分:0)

这是尝试索引行本身:

row["ColumnName"].ToString()

您正在寻找的是行中项目的索引:

row.Item["ColumnName"].ToString()
  

当DataTable持有单行而没有迭代时

如果您保证有一行,您可以直接引用它:

dt.Rows[0].Item["ColumnName"].ToString()

与任何索引一样,您应该在尝试索引之前进行一些边界检查。

答案 1 :(得分:0)

Convert.ToString(行["的ColumnName"]);

答案 2 :(得分:0)

这是方法:

string Text = dataTable.Rows[0]["ColumnName"].ToString();

答案 3 :(得分:0)

使用以下代码无需重复即可获取DataTable第一行的值:

string strCity = string.Empty;
if (yourDataTable.Rows.Count > 0)
    strCity = yourDataTable.Rows[0]["City"].ToString();

答案 4 :(得分:0)

DataTable dt = new DataTable();    
sqlDa.Fill(dt);
        if (dt.Rows.Count > 0)
        { 
            StringBuilder html = new StringBuilder();
            foreach (DataRow row in dt.Rows)
            {
                html.Append(row.Field<Int32>("Columname"));

            }
        }