【发布时间】:2011-10-15 13:40:52
【问题描述】:
请告诉我代码的问题
ArrayList dtMessages = new ArrayList();
while ((reader.Read()))
{
String temp = reader[0].ToString() + "," + reader[1].ToString() + "," + reader[2].ToString();
dtMessages.Add(temp);
}
我收到错误消息“对象引用未设置为对象的实例。”
抱歉,我是 C# 新手。请多多包涵。谢谢
编辑:我只想补充一点。 dtMessages 变量被声明为类变量。它没有在任何函数内声明。你认为这是问题所在吗?
编辑:代码
namespace Faye
{
public partial class _Default : System.Web.UI.Page
{
public List<String> dtMessages=new List<String>();
private List<String> LoadMessages()
{
while ((reader.Read()))
{
String temp = reader[0].ToString() + "," + reader[1].ToString() + "," + reader[2].ToString();
dtMessages.Add(temp);
}
}
}
}
在 dtMessages 的声明中添加静态没有区别
【问题讨论】:
-
哪一行抛出异常?
-
阅读器是什么类型的?另外:你有什么理由使用
ArrayList而不是像List<string>这样的泛型? -
我将 ArrayList 更改为 List
。 reader 的类型为 SqlDataReader。 -
那么,您是否正在访问在类范围之外无法访问的成员?如果可能,请尝试发布代码的相关部分。
-
我正在从该类中的方法访问该类变量。添加代码