Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用数据集的列_C#_Asp.net_Dataset - Fatal编程技术网

C# 如何使用数据集的列

C# 如何使用数据集的列,c#,asp.net,dataset,C#,Asp.net,Dataset,我有一个数据集的结果集,如下所示 if(dataset rows(Usermail) == 10000){then go ahead} [![Dataset][1]][1] 现在,我想添加IF条件以进行如下检查 if(dataset rows(Usermail) == 10000){then go ahead} 这是我的密码 DataSet ds = new DataSet(); using (SqlConnection conn = new SqlConnection(Co

我有一个
数据集的结果集,如下所示

if(dataset rows(Usermail) == 10000){then go ahead}
[![Dataset][1]][1]

现在,我想添加
IF
条件以进行如下检查

if(dataset rows(Usermail) == 10000){then go ahead}
这是我的密码

DataSet ds = new DataSet();
        using (SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"].ToString()))
        {
            SqlCommand sqlComm = new SqlCommand("GET_INWARD_REMINDER_REPORT", conn);
            sqlComm.CommandType = CommandType.StoredProcedure;
            SqlDataAdapter da = new SqlDataAdapter();
            da.SelectCommand = sqlComm;
            da.Fill(ds);

            if(DataSet rowchecking)
            {

            }
        }
所以我的问题是,如何检查和比较数据集列


您可以使用
foreach
循环行,并使用
DataRow.Field
获取电子邮件:

foreach(DataRow row in ds.Tables[0].Rows)
{
    if(row.Field<string>("UserEmail") == "10000")
        continue;  // or revert it and do something if UserEmail != "1000"
}
foreach(ds.Tables[0].Rows中的数据行)
{
如果(行字段(“用户电子邮件”)=“10000”)
继续;//如果UserEmail!=“1000”,则还原它并执行某些操作
}

您可以使用
foreach
循环行,并使用
DataRow.Field
获取电子邮件:

foreach(DataRow row in ds.Tables[0].Rows)
{
    if(row.Field<string>("UserEmail") == "10000")
        continue;  // or revert it and do something if UserEmail != "1000"
}
foreach(ds.Tables[0].Rows中的数据行)
{
如果(行字段(“用户电子邮件”)=“10000”)
继续;//如果UserEmail!=“1000”,则还原它并执行某些操作
}

您可以按如下方式执行:

int First = Convert.ToInt32(ds.Tables[0].Rows[0]["columnName1"].ToString());
string Second = ds.Tables[0].Rows[0]["columnName2"].ToString();
因此,对于您的情况,它可以是:

foreach (DataRow dr in ds.Tables[0].Rows)
{
    if(dr["UserEmail"].ToString() == "10000")
    {
      //do something;
    }         
}

您可以按如下方式进行操作:

int First = Convert.ToInt32(ds.Tables[0].Rows[0]["columnName1"].ToString());
string Second = ds.Tables[0].Rows[0]["columnName2"].ToString();
因此,对于您的情况,它可以是:

foreach (DataRow dr in ds.Tables[0].Rows)
{
    if(dr["UserEmail"].ToString() == "10000")
    {
      //do something;
    }         
}
后填充数据集

if (ds.Tables[0].Rows.Count > 0)
{
  for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
  {
    if(ds.Tables[0].Rows[i]["UserEmail"].ToString() == "10000")
    {
     //do something;
    }
  }
}
if(ds.Tables[0].Rows.Count>0)
{
对于(int i=0;i
填充数据集后

if (ds.Tables[0].Rows.Count > 0)
{
  for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
  {
    if(ds.Tables[0].Rows[i]["UserEmail"].ToString() == "10000")
    {
     //do something;
    }
  }
}
if(ds.Tables[0].Rows.Count>0)
{
对于(int i=0;i
您需要访问行中的字段,获取其值而不是列。@Alex:只有我想知道,如何实现它。您需要访问行中的字段,获取其值而不是列。@Alex:只有我想知道,如何实现。将错误获取为system.data.dataset’在
表中不包含“表”的定义。NK:修复了它,它的
表中不包含
表中的
是,也在
行字段(“UserEmail”)中)
我收到错误,因为**无法将字符串隐式转换为bool@NK:是否确实使用了上述代码?这是
如果(row.Field(“UserEmail”)==“10000”)…
对不起,我没有更改它。已更新为您的最新版本。现在没有错误。检查作为system.data.dataset获取错误“在
表中不包含“表”的定义。NK:修复了它,它的
表不
是,也在
行.Field(“UserEmail”)
我收到错误,因为**无法隐式将字符串转换为bool@NK:是否确实使用了上述代码?这是
如果(row.Field(“UserEmail”)==“10000”)…
对不起,我没有更改它。已更新为您的最新版本。现在没有错误。但它只发送一封邮件,我们可以循环吗?但它只发送一封邮件,我们可以循环吗??