Как добавить новые свойства в существующий класс во время выполнения независимо от существующих членов с возможностью чтения и записи в c # - PullRequest
0 голосов
/ 15 декабря 2010

Мне нужно создать свойство для каждого столбца в таблице базы данных, но мы не знаем количество столбцов заранее.Это в основном для повторного использования.

Ответы [ 2 ]

0 голосов
/ 15 декабря 2010

Я не понимаю, как это можно использовать (или возможно), потому что свойства более полезны во время разработки, поэтому вы можете легко найти и использовать их.
Если вы смогли создать их во время выполнения, как это сделать?Вы ожидаете, что кодер знает, что собственность будет существовать?Компилятор даже не увидит название свойства.Даже если вы используете отражение в этой точке, вам все равно необходимо указать имя свойства в текстовом виде.

Следовательно, использование DataTable для представления соответствующей таблицы базы данных - это один из способов дать вам ощущение запускадинамика времени.
Другой способ - использовать подход пары ключ-значение с Dictionary для каждой строки и сохранить их все в HashSet или List, в зависимости от остальной части вашего решения, дляпредставлять таблицу.

0 голосов
/ 15 декабря 2010

Используйте Словарь или Hashtable , скорее

...