【发布时间】:2018-02-01 12:08:09
【问题描述】:
Console.WriteLine(item.type) 的以下代码出现 CS1061 错误,这对我来说似乎很简单。
有人可以帮我吗?
namespace Test
{
class Program
{
static void Main(string[] args)
{
LocalPage lp = new LocalPage();
lp.Put();
}
}
public class LocalDataFolder
{
public LocalDataFolder() { }
public int type;
}
public class PicturePage<T>
{
public List<T> folders = new List<T>() { };
public void Put()
{
foreach (T item in folders)
Console.WriteLine(item.type);
}
}
public class LocalPage : PicturePage<LocalDataFolder>
{
public LocalPage()
{
folders.Add(new LocalDataFolder());
}
}
}
【问题讨论】:
-
错误消息是什么?你没有提到那个。您也没有使用您正在使用的编程语言标记您的问题。我确实在网上查找了 CS1061 消息(您也可以这样做),它说 type' 不包含 'member' 的定义。这告诉我您的
item没有名为type的成员,因此item.type是对不存在的成员 (type) 的无效引用。您需要检查item的类型并了解它有哪些成员。 -
泛型不是动态类型。查看有关限制类型的答案。
标签: c# class variables generics