Отражение Silverlight - PullRequest
       4

Отражение Silverlight

6 голосов
/ 05 марта 2011

Например, в ASP.NET мы могли бы отразить сборки в AppDomain или использовать тип, который мы могли бы получить метаданные о классе (реквизиты, методы и т. Д.).Какой метод используется для извлечения метаданных класса, извлечения свойств зависимостей и т. Д. В Silverlight?

Ответы [ 3 ]

5 голосов
/ 05 марта 2011

Отражение существует в Silverlight, с подмножеством API-интерфейсов, предоставляемых в полной версии .NET Framework.

Одно заметное отличие состоит в том, что вы не можете размышлять о частных членах в Silverlight (или, возможно, вы можете внутриСобственная сборка, но границы должны проявиться довольно быстро).Это функция безопасности, которая гарантирует, что вы не будете связываться с внутренними компонентами самой платформы.

Помимо этого (по общему признанию, довольно большого) ограничения, Reflection должен быть в основном таким же.

4 голосов
/ 05 марта 2011

В дополнение к тому, что сказал Остин, правило с отражением в Silverlight состоит в том, что вы можете получить доступ только через отражение к тому, что вы можете получить с помощью обычного кода.Так что речь идет не только о частных членах.Вы можете отражать защищенные члены только в самом классе или в любом классе, унаследовавшем его.

Существует множество недостающих частей API, но в целом большинство вещей должно быть возможным, даже если они требуют немного больше работы, чемв полном объеме .NET

0 голосов
/ 30 июня 2011

Вопросы безопасности для Reflection Reflection предоставляет возможность получать информацию о типах и членах, а также получать доступ к членам.В Silverlight вы можете использовать отражение для выполнения следующих задач:

Перечисление типов и элементов и проверка их метаданных.

Перечисление и проверка сборок и модулей.

Доступ к общедоступнымmembers.

Доступ к внутренним элементам (элементам Friend в Visual Basic) в сборке вызывающего кода.(В отражении это называется доступом на уровне сборки.)

В Silverlight нельзя использовать отражение для доступа к закрытым типам и элементам.Если уровень доступа типа или члена не позволит вам получить к нему доступ в статически скомпилированном коде, вы не сможете получить к нему динамический доступ с помощью отражения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...