NetworkInformationPermission.Intersect(IPermission) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea y devuelve un permiso que es la intersección del permiso actual y el permiso especificado.
public:
override System::Security::IPermission ^ Intersect(System::Security::IPermission ^ target);
public override System.Security.IPermission Intersect (System.Security.IPermission target);
override this.Intersect : System.Security.IPermission -> System.Security.IPermission
Public Overrides Function Intersect (target As IPermission) As IPermission
Parámetros
- target
- IPermission
Interfaz IPermission que va a formar una intersección con el permiso actual. Debe ser del mismo tipo que el permiso actual.
Devoluciones
Objeto NetworkInformationPermission que representa la intersección entre el permiso actual y el permiso especificado. Este nuevo permiso es null
si la intersección está vacía o si el parámetrotarget
es null
.
Excepciones
target
no es un NetworkInformationPermission.
Ejemplos
En el ejemplo siguiente se crea un objeto de permiso que es la intersección de los objetos de permiso existentes.
System::Net::NetworkInformation::NetworkInformationPermission^ unrestricted = gcnew System::Net::NetworkInformation::NetworkInformationPermission( System::Security::Permissions::PermissionState::Unrestricted );
Console::WriteLine( L"Is unrestricted? {0}", unrestricted->IsUnrestricted() );
System::Net::NetworkInformation::NetworkInformationPermission^ read = gcnew System::Net::NetworkInformation::NetworkInformationPermission( System::Net::NetworkInformation::NetworkInformationAccess::Read );
System::Net::NetworkInformation::NetworkInformationPermission^ copyPermission = dynamic_cast<System::Net::NetworkInformation::NetworkInformationPermission^>(read->Copy());
System::Net::NetworkInformation::NetworkInformationPermission^ unionPermission = dynamic_cast<System::Net::NetworkInformation::NetworkInformationPermission^>(read->Union( unrestricted ));
Console::WriteLine( L"Is subset?{0}", read->IsSubsetOf( unionPermission ) );
System::Net::NetworkInformation::NetworkInformationPermission^ intersectPermission = dynamic_cast<System::Net::NetworkInformation::NetworkInformationPermission^>(read->Intersect( unrestricted ));
System.Net.NetworkInformation.NetworkInformationPermission unrestricted =
new System.Net.NetworkInformation.NetworkInformationPermission(
System.Security.Permissions.PermissionState.Unrestricted);
Console.WriteLine("Is unrestricted? " + unrestricted.IsUnrestricted());
System.Net.NetworkInformation.NetworkInformationPermission read =
new System.Net.NetworkInformation.NetworkInformationPermission(
System.Net.NetworkInformation.NetworkInformationAccess.Read);
System.Net.NetworkInformation.NetworkInformationPermission copyPermission =
(System.Net.NetworkInformation.NetworkInformationPermission) read.Copy();
System.Net.NetworkInformation.NetworkInformationPermission unionPermission =
(System.Net.NetworkInformation.NetworkInformationPermission) read.Union(unrestricted);
Console.WriteLine("Is subset?" + read.IsSubsetOf(unionPermission));
System.Net.NetworkInformation.NetworkInformationPermission intersectPermission =
(System.Net.NetworkInformation.NetworkInformationPermission) read.Intersect(unrestricted);
Dim unrestricted As New System.Net.NetworkInformation.NetworkInformationPermission( _
System.Security.Permissions.PermissionState.Unrestricted)
Console.WriteLine("Is unrestricted? " + unrestricted.IsUnrestricted().ToString())
Dim read As New System.Net.NetworkInformation.NetworkInformationPermission( _
System.Net.NetworkInformation.NetworkInformationAccess.Read)
Dim copyPermission As System.Net.NetworkInformation.NetworkInformationPermission = _
CType(read.Copy(), System.Net.NetworkInformation.NetworkInformationPermission)
Dim unionPermission As System.Net.NetworkInformation.NetworkInformationPermission = _
CType(read.Union(unrestricted), System.Net.NetworkInformation.NetworkInformationPermission)
Console.WriteLine("Is subset?" + read.IsSubsetOf(unionPermission).ToString())
Dim intersectPermission As System.Net.NetworkInformation.NetworkInformationPermission = _
CType(read.Intersect(unrestricted), _
System.Net.NetworkInformation.NetworkInformationPermission)
Comentarios
La intersección de dos permisos es un permiso que describe el estado que ambos describen en común. Solo una demanda que supere ambos permisos originales pasará la intersección.