StrongNameIdentityPermission 构造函数

定义

初始化 StrongNameIdentityPermission 类的新实例。

重载

StrongNameIdentityPermission(PermissionState)

使用指定的 StrongNameIdentityPermission 初始化 PermissionState 类的新实例。

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)

为指定的强名称标识初始化 StrongNameIdentityPermission 类的新实例。

StrongNameIdentityPermission(PermissionState)

Source:
StrongNameIdentityPermission.cs
Source:
StrongNameIdentityPermission.cs
Source:
StrongNameIdentityPermission.cs

使用指定的 StrongNameIdentityPermission 初始化 PermissionState 类的新实例。

public:
 StrongNameIdentityPermission(System::Security::Permissions::PermissionState state);
public StrongNameIdentityPermission (System.Security.Permissions.PermissionState state);
new System.Security.Permissions.StrongNameIdentityPermission : System.Security.Permissions.PermissionState -> System.Security.Permissions.StrongNameIdentityPermission
Public Sub New (state As PermissionState)

参数

state
PermissionState

PermissionState 值之一。

例外

state 参数不是 PermissionState 的有效值。

示例

下面的代码示例演示如何使用 StrongNameIdentityPermission 构造函数。

snIdPerm2 = gcnew StrongNameIdentityPermission(PermissionState::None);
snIdPerm2 = new StrongNameIdentityPermission(PermissionState.None);
snIdPerm2 = New StrongNameIdentityPermission(PermissionState.None)

注解

创建完全受限 (None) 或 Unrestricted 权限。

注意

在 .NET Framework版本 1.0 和 1.1 中,标识权限不能具有Unrestricted权限状态值。 在 .NET Framework 2.0 及更高版本中,标识权限可以具有任何权限状态值。 这意味着在版本 2.0 及更高版本中,标识权限的行为与实现 IUnrestrictedPermission 接口的权限的行为相同。 也就是说,如果已向程序集授予完全信任,则无论程序集的标识如何,对标识的要求始终成功。

在 .NET Framework版本 1.0 和 1.1 中,即使调用程序集完全受信任,对标识权限的要求也有效。 也就是说,尽管调用程序集具有完全信任,但如果程序集不符合所需的条件,则对标识权限的要求会失败。 在 .NET Framework 版本 2.0 及更高版本中,如果调用程序集具有完全信任,则对标识权限的要求无效。 这可确保所有权限的一致性,避免将标识权限视为特殊情况。

将此构造函数与权限状态值 None 一起使用,以创建与任何强名称匹配的标识权限。 如果随后设置了 NameVersion 属性,则可以由 权限表示特定的强名称标识。

适用于

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)

Source:
StrongNameIdentityPermission.cs
Source:
StrongNameIdentityPermission.cs
Source:
StrongNameIdentityPermission.cs

为指定的强名称标识初始化 StrongNameIdentityPermission 类的新实例。

public:
 StrongNameIdentityPermission(System::Security::Permissions::StrongNamePublicKeyBlob ^ blob, System::String ^ name, Version ^ version);
public StrongNameIdentityPermission (System.Security.Permissions.StrongNamePublicKeyBlob blob, string name, Version version);
new System.Security.Permissions.StrongNameIdentityPermission : System.Security.Permissions.StrongNamePublicKeyBlob * string * Version -> System.Security.Permissions.StrongNameIdentityPermission
Public Sub New (blob As StrongNamePublicKeyBlob, name As String, version As Version)

参数

blob
StrongNamePublicKeyBlob

定义强名称标识命名空间的公共密钥。

name
String

强名称标识的简单名称部分。 这对应于程序集的名称。

version
Version

标识的版本号。

例外

blob 参数为 null

name 参数为空字符串 ("")。

示例

下面的代码示例演示如何使用 StrongNameIdentityPermission 构造函数。

snIdPerm1 = gcnew StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", gcnew Version("1.0.0.0"));
snIdPerm1 = new StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", new Version("1.0.0.0"));
snIdPerm1 = New StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", New Version("1.0.0.0"))

注解

name仅当公钥用于标识程序集时, 和 version 参数才能null为 。 不应使用空字符串 (“”) 来代替 null。 如果 name 是空字符串, ArgumentException 则引发 。

有关程序集的名称和版本号的详细信息,请参阅 强名称程序集

适用于