在我声明之后,这是我得到的错误
protected void Page_Load(object sender, EventArgs e)
{
List<String> LabelTextList = new List<String>();
dr = cmd.ExecuteReader();
while (dr.Read())
{
LabelTextList.add(dr[0].ToString());
}
}
错误1'MasterPage_Profile'不包含'LabelTextList'的定义,并且没有可以找到接受类型'MasterPage_Profile'的第一个参数的扩展方法'LabelTextList'(您是否缺少using指令或程序集引用?)< / p>
[更新]现在说:
'System.Collections.Generic.List'不包含'add'的定义,并且没有扩展方法'add'接受类型'System.Collections.Generic.List'的第一个参数可以找到(你错过了吗?) using指令或程序集引用?)
答案 0 :(得分:5)
删除this
- LabelTextList
是一个局部变量。
protected void Page_Load(object sender, EventArgs e)
{
List<String> LabelTextList = new List<String>();
dr = cmd.ExecuteReader();
while (dr.Read())
{
LabelTextList.add(dr[0].ToString());
}
}
答案 1 :(得分:2)
要解决此问题,请将其更改为以下
LabelTextList.Add(dr[0].ToString());
LabelTextList
值是局部变量定义。当您使用this.
为表达式添加前缀时,它会告诉编译器查找值的成员,而不是本地成员。
以下是一个计数器示例,其中包含一个名为LabelTextList
的字段,可与this.
List<String> LabelTextList = new List<String>();
protected void Page_Load(object sender, EventArgs e)
{
dr = cmd.ExecuteReader();
while (dr.Read())
{
this.LabelTextList.Add(dr[0].ToString());
}
}
此外,如果您将值保留为本地值,则标准命名模式将为labelTextList
而不是LabelTextList
。这不是语言所必需的,但却是首选的样式。