从SqlDataReader读取变量时如何定义变量(返回所有行)

颅骨瘤

我有一个表,其中有14行,我想返回以及将每个单元格声明为变量。这是我尝试过的:

using (SqlConnection conn1 = new SqlConnection(ConfigurationManager.ConnectionStrings["2012SSMS"].ConnectionString))
        {
            SqlCommand cmd1 = new SqlCommand(@"SELECT [Question], [Answer] 
            from [MyTable]", conn1);
            conn1.Open();
            using (SqlDataReader reader1 = cmd1.ExecuteReader())
            {
                while (reader1.HasRows)
                {
                    reader1.GetName(0);
                    reader1.GetName(1);

                    while(reader1.Read())
                    {
                        string Question(1) = reader1.GetString(0); //errors here
                        string Answer(1) = reader1.GetString(1); //and here
                    }
                    reader1.NextResult();
                }
            }
}

我的希望是将声明的变量作为Question1-Question14Answer1-返回Answer14我该怎么做呢?

史蒂夫

好吧,如果要使用14个不同的名称,则可以为问题定义14个字符串变量,为答案定义14个字符串变量。坦率地说,当您拥有列表和其他收集类时,这是荒谬的。

例如

为您的问题/答案定义课程

public class QuestionAnswer
{
     public string Question {get;set;}
     public string Answer {get;set;}
}

然后修改您的代码以创建一个 List<QuestionAnswer>

List<QuestionAnswer> listOfQuestionsAndAnswers = new List<QuestionAnswer>();
using (SqlConnection conn1 = new SqlConnection(ConfigurationManager.ConnectionStrings["2012SSMS"].ConnectionString))
{
    SqlCommand cmd1 = new SqlCommand(@"SELECT [Question], [Answer] 
                                       from [MyTable]", conn1);
    conn1.Open();
    using (SqlDataReader reader1 = cmd1.ExecuteReader())
    {
           while(reader1.Read())
           {
               QuestionAnswer qa = new QuestionAnswer();
               qa.Question = reader1.GetString(0); 
               qa.Answer = reader1.GetString(1); 
               listOfQuestionsAndAnswers.Add(qa);
           }
    }
}

现在,您可以使用以下语法在列表中使用任何问题

string aQuestion = listOfQuestionsAndAnswers[0].Question;
string anAnswer = listOfQuestionsAndAnswers[0].Answer;

最后,我真的建议您花些时间学习如何使用Dapper,如Gravell先生的回答所示。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从SqlDataReader读取变量时如何定义变量(返回所有行)

来自分类Dev

SqlDataReader不返回所有行

来自分类Dev

添加到List <MyClass>时,SqlDataReader不会返回所有行

来自分类Dev

添加到List <MyClass>时,SqlDataReader不会返回所有行

来自分类Dev

当SPROC变量为NULL时返回所有值

来自分类Dev

data.table:当不是所有变量都在组内时,如何用%in%过滤行?

来自分类Dev

在确认声明的列并对其进行定义时,sql如何返回所有行?

来自分类Dev

如何查看/扩展变量中返回的所有值?

来自分类Dev

如何声明变量清除所有变量?

来自分类Dev

调用方法时如何传递所有局部变量

来自分类Dev

对于从devise.rb中的环境变量读取的所有配置,设置均返回nil

来自分类Dev

如何删除变量YYYYMM以13结尾的所有行?

来自分类Dev

在迭代器中意外重定义变量以读取所有列表元素

来自分类Dev

节点红色返回所有流变量

来自分类Dev

返回列出的obj /变量,而不是模型中的所有变量

来自分类Dev

如何在每次循环时更改变量的函数进行循环,直到使用所有变量?

来自分类Dev

定义变量时无法读取未定义的属性“查找”

来自分类Dev

当数据线有变量空格时如何定义输入变量

来自分类Dev

自定义JFileChooser。如何返回变量?

来自分类Dev

注意:未定义的变量:PDO不返回数据时的行

来自分类Dev

SQL用于在输入变量中包含基于列表的行,或者在变量为null时包含所有行

来自分类Dev

SQL用于在输入变量中包含基于列表的行,或者在变量为null时包含所有行

来自分类Dev

如何将所有链接存储到变量中,同时允许分别读取它们?(Python)

来自分类Dev

如何使用PowerShell导入文件,并将所有现有的占位符变量替换为脚本中定义的变量?

来自分类Dev

读取具有一行和多个变量的txt文件时遇到麻烦

来自分类Dev

Bash从变量读取行

来自分类Dev

如何使SqlDataReader获得time(7)类型变量?

来自分类Dev

在方法中定义时如何导入变量

来自分类Dev

在定义内部带有变量的lambda函数时,如何在更改变量时防止函数更改?

Related 相关文章

  1. 1

    从SqlDataReader读取变量时如何定义变量(返回所有行)

  2. 2

    SqlDataReader不返回所有行

  3. 3

    添加到List <MyClass>时,SqlDataReader不会返回所有行

  4. 4

    添加到List <MyClass>时,SqlDataReader不会返回所有行

  5. 5

    当SPROC变量为NULL时返回所有值

  6. 6

    data.table:当不是所有变量都在组内时,如何用%in%过滤行?

  7. 7

    在确认声明的列并对其进行定义时,sql如何返回所有行?

  8. 8

    如何查看/扩展变量中返回的所有值?

  9. 9

    如何声明变量清除所有变量?

  10. 10

    调用方法时如何传递所有局部变量

  11. 11

    对于从devise.rb中的环境变量读取的所有配置,设置均返回nil

  12. 12

    如何删除变量YYYYMM以13结尾的所有行?

  13. 13

    在迭代器中意外重定义变量以读取所有列表元素

  14. 14

    节点红色返回所有流变量

  15. 15

    返回列出的obj /变量,而不是模型中的所有变量

  16. 16

    如何在每次循环时更改变量的函数进行循环,直到使用所有变量?

  17. 17

    定义变量时无法读取未定义的属性“查找”

  18. 18

    当数据线有变量空格时如何定义输入变量

  19. 19

    自定义JFileChooser。如何返回变量?

  20. 20

    注意:未定义的变量:PDO不返回数据时的行

  21. 21

    SQL用于在输入变量中包含基于列表的行,或者在变量为null时包含所有行

  22. 22

    SQL用于在输入变量中包含基于列表的行,或者在变量为null时包含所有行

  23. 23

    如何将所有链接存储到变量中,同时允许分别读取它们?(Python)

  24. 24

    如何使用PowerShell导入文件,并将所有现有的占位符变量替换为脚本中定义的变量?

  25. 25

    读取具有一行和多个变量的txt文件时遇到麻烦

  26. 26

    Bash从变量读取行

  27. 27

    如何使SqlDataReader获得time(7)类型变量?

  28. 28

    在方法中定义时如何导入变量

  29. 29

    在定义内部带有变量的lambda函数时,如何在更改变量时防止函数更改?

热门标签

归档