ReflectionPermissionFlag 列舉
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
警告
Code Access Security is not supported or honored by the runtime.
指定許可的 System.Reflection 和 System.Reflection.Emit 命名空間使用。
此列舉支援其成員值的位元組合。
public enum class 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}")]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum ReflectionPermissionFlag
[<System.Flags>]
type 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 =
Public Enum ReflectionPermissionFlag
- 繼承
- 屬性
欄位
AllFlags | 7 | 設定 |
MemberAccess | 2 | 不論授權集為何,所有成員上都允許引動作業。 如果這個旗標沒有設定,則只有在可見成員上允許引動作業。 |
NoFlags | 0 | 允許型別和成員的列舉型別。 可見型別和成員上允許引動作業。 |
ReflectionEmit | 4 | 允許發出偵錯符號。 從 .NET Framework 2.0 Service Pack 1 開始,不再需要此旗標來發出程式碼。 |
RestrictedMemberAccess | 8 | 受限制的成員存取是為部分信任的程式碼所提供的。 只有在部分信任程式碼的授權集包含了組件 (包含所要存取之非公用型別和成員) 授權集中的所有權限時,部分信任程式碼才可以存取非公用型別和成員。 此旗標是 .NET Framework 2.0 SP1 中的新功能。 |
TypeInformation | 1 | 這個旗標已過時。 不需要旗標即可列舉型別和成員以及檢查其中繼資料。 請改用 NoFlags。 |
範例
下列範例示範如何使用 ReflectionPermissionFlag
列舉,初始化 類別的新實例,此實例 ReflectionPermission 表示執行受限制成員存取的許可權。 此範例是針對 類別提供的較大範例的 ReflectionPermission 一部分。
如需示範如何使用 RestrictedMemberAccess 旗標搭配網際網路程式碼的範例,請參閱 逐步解說:在部分信任案例中發出程式碼。
ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);
Dim restrictedMemberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess)
備註
警告
程式碼存取安全性 (CAS) 在所有版本的 .NET Framework 和 .NET 中已被取代。 使用 CAS 相關 API 時,最新版本的 .NET 不會接受 CAS 批註,並產生錯誤。 開發人員應該尋求替代方式來完成安全性工作。
和 ReflectionPermissionAttribute 類別會 ReflectionPermission 使用此列舉。 ReflectionPermission如果未授與,則所有類型和成員都允許反映,但叫用作業只允許在可見類型和成員上。 如需詳細資訊,請參閱反映的安全性考量。
警告
由於 ReflectionPermission 可以提供私用類別成員的存取權,因此建議您只 RestrictedMemberAccess
使用 旗標授與網際網路程式碼,而不授 ReflectionPermission 與任何其他旗標。
旗 RestrictedMemberAccess
標會在 .NET Framework 2.0 SP1 中引進。 若要使用此旗標,您的應用程式應以 .NET Framework 3.5 或更新版本為目標。
重要
AllFlags
不包含 RestrictedMemberAccess
旗標。 若要取得包含此列舉中所有旗標的遮罩,您必須使用 與 AllFlags
RestrictedMemberAccess
的組合。
從 .NET Framework 2.0 SP1 開始,除非發出偵錯符號, ReflectionEmit
否則旗標不再需要發出程式碼。 若要使用此功能,您的應用程式應以 .NET Framework 3.5 或更新版本為目標。
從 .NET Framework 2.0 開始, TypeInformation
旗標不再需要反映非公用類型和成員;旗標已標示為過時。