使长话短说.我有以下代码:
class MyList : IEnumerable
{
private List<string> T1 = new List<string>();
private List<string> T2 = new List<string>();
private List<string> T3 = new List<string>();
public List<string> Name { set { T1 = value; } get { return T1; } }
public List<string> DataType { set { T2 = value; } get { return T2; } }
public List<string> Nullable { set { T3 = value; } get { return T3; } }
IEnumerator IEnumerable.GetEnumerator()
{
return (IEnumerator)GetEnumerator();
}
public MyList<List<string>, List<string>, List<string>> GetEnumerator()
{
return new MyList<List<string>, List<string>, List<string>>(T1, T2, T2);
}
}
Run Code Online (Sandbox Code Playgroud)
我想要的是像这样访问它:
MyList ml = new MyList();
foreach (var item in ml)
{
str = item.Name;
}
Run Code Online (Sandbox Code Playgroud)
它不允许我访问子项,如item.Name或item.DataType.
看来你正在尝试列出一些东西,每个东西都有3个属性:Name,DataType,Nullable.试试这个:
class MyItem
{
public string Name { get; set; }
public string DataType { get; set; }
public string Nullable { get; set; } // also, consider making this bool
}
Run Code Online (Sandbox Code Playgroud)
然后列出那些.