Ответ 1
Метаданные могут содержать до 24-битных ссылок/определений на сборку. Будучи собственностью, вам нужно 2 метода на каждое свойство. Следовательно, предел будет 23-бит или 1 << 23 - 1
для всей сборки.
Update:
Если они являются только свойствами только для чтения, предел будет 1 << 24 - 1
.
Ответ на второй вопрос:
Нет, накладные расходы не будут. Простые свойства, вероятно, будут встроены в JIT.
Некоторые мысли:
Вы никогда не достигнете вышеуказанного предела. Изображение имеет 16 миллионов свойств. Для этих имен потребуется 16 миллионов строк. Скажем, среднее имя - 8 символов, тогда вы смотрите на размер таблицы строк ~ 256 МБ (имя свойства + имя метода), а затем вы еще не начали кодирование. Просто мысль.