ReflectionPermission.Intersect メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > ReflectionPermission.Intersect メソッドの意味・解説 

ReflectionPermission.Intersect メソッド

現在のアクセス許可指定したアクセス許可積集合を表すアクセス許可作成して返します

名前空間: System.Security.Permissions
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Overrides Function
 Intersect ( _
    target As IPermission _
) As IPermission
Dim instance As ReflectionPermission
Dim target As IPermission
Dim returnValue As IPermission

returnValue = instance.Intersect(target)
public override IPermission Intersect (
    IPermission target
)
public:
virtual IPermission^ Intersect (
    IPermission^ target
) override
public IPermission Intersect (
    IPermission target
)
public override function Intersect (
    target : IPermission
) : IPermission

パラメータ

target

現在のアクセス許可との積集合を持つアクセス許可。これは、現在のアクセス許可と同じ型であることが必要です。

戻り値
現在のアクセス許可指定したアクセス許可積集合を表す新しアクセス許可積集合が空の場合、この新しアクセス許可null 参照 (Visual Basic では Nothing) です。

例外例外
例外種類条件

ArgumentException

target パラメータnull 参照 (Visual Basic では Nothing) ではなく現在のアクセス許可と同じ型でもありません。

解説解説
使用例使用例
    Private Function IntersectDemo() As
 Boolean
        Dim returnValue As Boolean
 = True
        Dim reflection1, reflection2 As ReflectionPermissionFlag
        Dim reflectionPerm1, reflectionPerm2, reflectionPerm3
 As ReflectionPermission
        Dim reflectionGen1 As New
 ReflectionGenerator()
        Dim reflectionGen2 As New
 ReflectionGenerator()
        reflectionGen1.ResetIndex()
        While reflectionGen1.CreateReflection(reflection1)
            reflectionPerm1 = New ReflectionPermission(reflection1)
            Console.WriteLine("**********************************************************"
 & ControlChars.Lf)
            reflectionGen2.ResetIndex()

            While reflectionGen2.CreateReflection(reflection2)
                reflectionPerm2 = New ReflectionPermission(reflection2)
                reflectionPerm3 = CType(reflectionPerm1.Intersect(reflectionPerm2),
 ReflectionPermission)
                If Not (reflectionPerm3 Is
 Nothing) Then
                    Console.WriteLine(("The intersection of "
 & reflection1.ToString() & " and " _
                    & reflection2.ToString() & " = "
 _
                    & CType(reflectionPerm3, ReflectionPermission).Flags.ToString()))
                Else
                    Console.WriteLine(("The intersection of "
 & reflection1.ToString() & " and " _
                    & reflection2.ToString() & " is null."))
                End If
ContinueWhile2:
            End While
ContinueWhile1:
        End While

        Return returnValue
    End Function 'IntersectDemo

private bool IntersectDemo()
{
    bool returnValue = true;
    ReflectionPermissionFlag reflection1, reflection2;
    ReflectionPermission reflectionPerm1, reflectionPerm2, reflectionPerm3;
    ReflectionGenerator reflectionGen1 = new ReflectionGenerator();
    ReflectionGenerator reflectionGen2 = new ReflectionGenerator();
    reflectionGen1.ResetIndex();
    while (reflectionGen1.CreateReflection(out reflection1))
    {
        reflectionPerm1 = new ReflectionPermission(reflection1);
        Console.WriteLine("**********************************************************\n");
        reflectionGen2.ResetIndex();

        while (reflectionGen2.CreateReflection(out reflection2))
        {
            reflectionPerm2 = new ReflectionPermission(reflection2);

            reflectionPerm3 = (ReflectionPermission)reflectionPerm1.Intersect(reflectionPerm2);
            if (reflectionPerm3 != null)
            {
                Console.WriteLine("The intersection of " + reflection1
 + " and " + reflection2 + " = " +
                    ((ReflectionPermission)reflectionPerm3).Flags.ToString());
            }
            else
            {
                Console.WriteLine("The intersection of " + reflection1
 + " and " + reflection2 + " is null.");
            }
        }
    }

    return returnValue;
}
bool IntersectDemo()
{
   bool returnValue = true;
   ReflectionPermissionFlag reflection1;
   ReflectionPermissionFlag reflection2;
   ReflectionPermission^ reflectionPerm1;
   ReflectionPermission^ reflectionPerm2;
   ReflectionPermission^ reflectionPerm3;
   ReflectionGenerator^ reflectionGen1 = gcnew ReflectionGenerator;
   ReflectionGenerator^ reflectionGen2 = gcnew ReflectionGenerator;
   reflectionGen1->ResetIndex();
   while ( reflectionGen1->CreateReflection(  &reflection1
 ) )
   {
      reflectionPerm1 = gcnew ReflectionPermission( reflection1 );
      Console::WriteLine( "**********************************************************\n"
 );
      reflectionGen2->ResetIndex();
      while ( reflectionGen2->CreateReflection(  &reflection2
 ) )
      {
         reflectionPerm2 = gcnew ReflectionPermission( reflection2 );
   
         reflectionPerm3 = dynamic_cast<ReflectionPermission^>(reflectionPerm1->Intersect(
 reflectionPerm2 ));
         if ( reflectionPerm3 != nullptr )
         {
            Console::WriteLine( "The intersection of {0} and {1} = {2}",
 reflection1, reflection2, (dynamic_cast<ReflectionPermission^>(reflectionPerm3))->Flags
 );
         }
         else
         {
            Console::WriteLine( "The intersection of {0} and {1} is null",
 reflection1, reflection2 );
         }
      }
   }

   return returnValue;
}

private boolean IntersectDemo() 
{
    boolean returnValue = true;
    ReflectionPermissionFlag reflection1[] = 
        new ReflectionPermissionFlag[1];
    ReflectionPermissionFlag reflection2[] = 
        new ReflectionPermissionFlag[1];
    ReflectionPermission reflectionPerm1[] = 
        new ReflectionPermission[1];
    ReflectionPermission reflectionPerm2[] = 
        new ReflectionPermission[1];
    ReflectionPermission reflectionPerm3;
    ReflectionGenerator reflectionGen1 =  
        new ReflectionGenerator();
    ReflectionGenerator reflectionGen2 =  
        new ReflectionGenerator();
    reflectionGen1.ResetIndex();
    while(reflectionGen1.CreateReflection(reflectionPerm1, reflection1))
 {
        if (reflectionPerm1[0] == null) {
            continue ;
        }
        Console.WriteLine("***************************************" 
            + "*******************\n");
        reflectionGen2.ResetIndex();
        
        while(reflectionGen2.CreateReflection(reflectionPerm2,
 
            reflection2)) {
            if (reflectionPerm2[0] == null)
 {
                continue ;
            }
            
            reflectionPerm3 =((ReflectionPermission)(
                reflectionPerm1[0].Intersect(reflectionPerm2[0])));
            if (reflectionPerm3  != null) {
                Console.WriteLine(("The intersection of " 
                    + reflection1[0] + " and " 
                    + reflection2[0] + " = " 
                    + ((ReflectionPermission)(reflectionPerm3)).
                    get_Flags().ToString()));
            }
            else {
                Console.WriteLine(("The intersection of " 
                    + reflection1[0] + " and " + reflection2[0] 
                    + " is null."));
            }
        }
    }
    return returnValue ;
} //IntersectDemo   
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ReflectionPermission クラス
ReflectionPermission メンバ
System.Security.Permissions 名前空間



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

ReflectionPermission.Intersect メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ReflectionPermission.Intersect メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS