Вопрос

Что должно быть более правильным или что рекомендуется использовать в VB.NET из отражения или отражения.позднее связывание:

'Type can be various objects that have a common property for sure.'
Dim type = sender.GetType()
Dim prop = type.GetProperty("Text", 20)
Dim value = property.GetValue(sender, Nothing)

против:

Dim value = sender.Text
Это было полезно?

Решение

Под одеялом они оба делают одно и то же (условно говоря).Функция позднего связывания VB.NET осуществляется с помощью запросов метаданных сборки во время выполнения, и именно это и есть отражение.

Одним из преимуществ первого подхода является возможность более детальной обработки ошибок.

Другие советы

Разве sender.Text не всегда является строкой?Таким образом, тип значения можно определить во время компиляции, что делает последнее примером раннего связывания?

Если вы используете позднее связывание, вы можете поместить метод, извлекающий свойства, в разделяемый класс с Option Explicit = Off.Таким образом, в остальной части вашего кода по-прежнему будет выполняться проверка типов.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top