Я пытаюсь сделать цикл через словарь (код в button_click - тот, который я пытаюсь исправить), чтобы получить все свойства моего класса. Вместо того, чтобы писать их один за другим, как сейчас выглядит мой код. Текущая версия работает нормально, но если a должно иметь как 50 свойств или более, я думаю, что должен быть более простой способ сделать это с помощью какого-то цикла.Как пройти через словарь, чтобы получить все свойства класса?
class Person
{
public int PersNr { get; set; }
public string Name { get; set; }
public string BioPappa { get; set; }
public Adress Adress { get; set; }
public static Dictionary<int, Person> Metod()
{
var dict = new Dictionary<int, Person>();
dict.Add(8706, new Person
{
Name = "Person",
PersNr = 8706,
BioPappa = "Dad",
Adress = new Adress
{
Land = "Land",
PostNr = 35343,
Stad = "city"
}
});
dict.Add(840, new Person
{
Name = "Person",
PersNr = 840,
BioPappa = "Erik"
});
return dict;
}
}
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Dictionary<int, Person> myDic = Person.Metod();
var person = myDic[int.Parse(textBoxSok.Text)];
listBox1.Items.Add(person.Name);
listBox1.Items.Add(person.PersNr);
listBox1.Items.Add(person.BioPappa);
listBox1.Items.Add(person.Adress.Stad);
listBox1.Items.Add(person.Adress.PostNr);
listBox1.Items.Add(person.Adress.Land);
}
}
Наполнение свой словарь из файла с петлей будет проще. Вам все еще нужны все данные, определенные где-то. –
Мне ваш вопрос непонятен – akonsu
держите этот путь, это проще. И если у вас есть 50 свойств в одном классе, исправьте свой дизайн. –