Darshan E Ksheerasagar Ответов: 1

Свойство метода не имеет доступа в C#


Здравствуйте В приведенном ниже коде пожалуйста помогите мне

открытый класс К1
{
общественные К1()
{
I1Value = новый I1[] { };
}

private I1[] I1Value;

общественные И1[] K1_Method
{
получить
{
верни это.I1Value;
}
набор
{
этот.I1Value = значение;
}
}
}
открытый класс И1
{
общественные И1()
{
Cd = новый InstCode();
}
private InstCode cdField;
частная строка instField;

общественные Instruction3Code кд
{
получить
{
вернуть это.cdField;
}
набор
{
это.cdField = значение;
}
}
публичная строка InstrInf
{
получить
{
вернуть это.instField;
}
набор
{
это.instField = значение;
}
}
}

public enum InstCode
{
Один,
Б,
С,
Д,
}



Когда я пытаюсь получить доступ к такому методу, как этот, я не могу получить доступ

protected void Page_Load(отправитель объекта, EventArgs e)
{
пробовать
{
K1 objK1 = новый K1();
//objK1.K1_Method[0].Cd = ((InstCode)Enum. Parse(typeof(InstCode), "D"));
objK1.K1_Method.
}
поймать (исключение бывший)
{

}
}

Что я уже пробовал:

Я попытался получить доступ
objK1.K1_Method.
но это не доступ .

Suvendu Shekhar Giri

Это что, домашнее задание?

Darshan E Ksheerasagar

Если вы знаете, пожалуйста, ответьте мне ...

Darshan E Ksheerasagar

Нет. Я работаю над проектом, где есть такая же Сенария ..

1 Ответов

Рейтинг:
6

OriginalGriff

Во - первых, "точка" после K1_Method не помогает-после этого вам нужен идентификатор.
Но...если вы удалите эту строку и раскомментируете строку выше, она будет компилироваться (предполагая, что Instruction3Code объявлен где - то-вы, вероятно, имели в виду InstCode, чтобы соответствовать типу поля, которое вы возвращаете).

Но...этот код не будет работать изолированно, потому что в вашем коде нет никаких элементов. I1Value массив:

I1Value = new I1[] { };
Если только вы не добавите немного. в индексе 0 нет элемента, поэтому вы получите IndexOutOfRangeException когда вы пытаетесь запустить код. Это немного похоже на кухонный ящик для столовых приборов: вы протягиваете руку, чтобы взять вилку, и она пуста, поэтому вы не можете есть свою еду! Сначала положите в ящик еще несколько вилок, и вы сможете вынуть одну.


Darshan E Ksheerasagar

Как я могу добавить элемент перечисления в массив I1 [] { }...?