如何在类型字符串数组中插入数据?

时间:2010-10-22 11:05:32

标签: asp.net

我从数据库和while循环中选择数据,我希望它将所有数据存储在一个变量中。怎么做? 变量selectAnswer是字符串数组类型。

我使用了这段代码,但这会给出错误。修改此代码。

string selectAnswer[] = new string[];
while (rdr.Read())
{
    selectAnswer[] = rdr[0].ToString();
}  

3 个答案:

答案 0 :(得分:2)

使用generic List代替,它有几个advantages

List<String> selectAnswer = new List<String>(); 
while (rdr.Read())
{
    selectAnswer.Add(rdr[0].ToString());
}  

答案 1 :(得分:0)

您正在尝试将单个字符串分配给整个数组,而不是每个数组项分配一个字符串。

您可以使用List<string>代替字符串数组,只需向其中添加项目:

IList<string> selectAnswer = new List<string>();
while (rdr.Read())
{
    selectAnswer.Add(rdr[0].ToString());
}

为了使用数组,首先需要使用数据读取器中的项目数声明数组变量,并为要插入的索引提供计数器。

答案 2 :(得分:0)

你的问题很混乱。 您想将数据存储到单个变量还是单个字符串中? 如果是这种情况,为什么不使用StringBuilder。

StringBuilder answer = new StringBuilder();
while (rdr.Read())
{
    answer.AppendLine(rdr[0].ToString());
}

但是我仍然不确定我是否正确地感到不适。

其他选项是使用列表:

IList<string> answer = new List<string>();
while (rdr.Read())
{
    answer.Add(rdr[0].ToString());
}
answer.ToArray();