用datatable.select的只能得到数组
这里的数组是DataRow[]
因为符合A=string1的记录行可能存在多个
如果你确定只会有一条记录
则可以如此来获取:
DataRow[] drs = datatable.Select("A=string1");
string b = drs[0]["B"].ToString();
#region GetString 一个字符串
public string GetString(string tablename, string operatetype, string result, string conditions)
{
string AddressP = "";
string sqlstr = operatetype + " " + result + " from " + tablename + " where " + conditions;
using (SqlConnection connection = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(sqlstr, connection))
{
try
{
connection.Open();
AddressP = cmd.ExecuteScalar().toString();
while (dr.Read())
{
AddressP = dr[0].ToString();
}
}
catch (System.Data.SqlClient.SqlException e)
{
connection.Close();
throw e;
}
}
}
return AddressP;
}
#endregion
这是我们项目中的一个基类函数,取一个值的全走这个,
主要是用的。ExecuteScalar()函数。
执行ExecuteScalar 方法,然后 ,语句 这样写 select [字段]from 表名 where 条件 返回的是一个object 类型,此值 为 数据查询的第一行第一列的值。
SqlCommand cmd = new SqlCommand();
object retval = cmd.ExecuteScalar();