Короче говоря. У меня есть следующий код:C# IEnumerable не разрешает доступ к подпунктам
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);
}
}
То, что я хочу, чтобы получить доступ к нему, как это:
MyList ml = new MyList();
foreach (var item in ml)
{
str = item.Name;
}
Это не позволяет мне получить доступ к подэлементу, как item.Name или item.DataType.
Предоставлено код дает много ошибок компиляции. Это проблема? Или у вас есть еще одна проблема? – Styxxy
Возможно, вы захотите реализовать 'IEnumerable' вместо этого. Но я думаю, что у вас большие проблемы. Возможно, вам нужен один объект класса для представления одного набора 'Name',' Datatype', 'Nullable'. –
@Styxxy код не дает каких-либо проблем с компиляцией, все, что я хочу, это иметь доступ к нему, как маленький кусок кода под вопросом. – Johnny