ReflectionPermissionFlag Перечисление

Определение

Внимание!

Code Access Security is not supported or honored by the runtime.

Указывает разрешенное использование пространств имен System.Reflection и System.Reflection.Emit.

Это перечисление поддерживает побитовую комбинацию значений его членов.

public enum class ReflectionPermissionFlag
[System.Flags]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum ReflectionPermissionFlag
[System.Flags]
public enum ReflectionPermissionFlag
[<System.Flags>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type ReflectionPermissionFlag = 
[<System.Flags>]
[<System.Serializable>]
type ReflectionPermissionFlag = 
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ReflectionPermissionFlag = 
[<System.Flags>]
type ReflectionPermissionFlag = 
Public Enum ReflectionPermissionFlag
Наследование
ReflectionPermissionFlag
Атрибуты

Поля

Имя Значение Описание
NoFlags 0

Разрешено перечисление типов и элементов. Операции вызова разрешены для видимых типов и элементов.

TypeInformation 1

Этот флаг устарел. Флаги не необходимы для перечисления типов и элементов и проверки их метаданных. Вместо этого используйте NoFlags.

MemberAccess 2

Операции вызова для всех членов разрешены независимо от набора грантов. Если этот флаг не задан, операции вызова разрешены только для видимых элементов.

ReflectionEmit 4

Допускается выдача символов отладки. Начиная с .NET Framework 2.0 с пакетом обновления 1 (SP1), этот флаг больше не требуется для выдачи кода.

AllFlags 7

TypeInformation , MemberAccessи ReflectionEmit заданы. AllFlags не включает в себя RestrictedMemberAccess.

RestrictedMemberAccess 8

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

Комментарии

Предостережение

Безопасность доступа к коду (CAS) устарела во всех версиях платформ .NET Framework, и .NET. Последние версии .NET не учитывают заметки CAS и создают ошибки, если используются API, связанные с CAS. Разработчики должны искать альтернативные средства выполнения задач безопасности.

Это перечисление используется классами и ReflectionPermission классамиReflectionPermissionAttribute. Если не ReflectionPermission предоставлено, отражение разрешено для всех типов и элементов, но операции вызова разрешены только для видимых типов и членов. Дополнительные сведения см. в разделе Соображения безопасности для отражений.

Предостережение

Так как ReflectionPermission можно предоставить доступ к членам частного класса, рекомендуется предоставить ReflectionPermission код Интернета только с RestrictedMemberAccess флагом, а не с другими флагами.

Important

AllFlags не включает RestrictedMemberAccess флаг. Чтобы получить маску, содержащую все флаги в этом перечислении AllFlags , необходимо использовать сочетание с RestrictedMemberAccess.

Применяется к

См. также раздел