StrongNameIdentityPermission.Union メソッド
アセンブリ: mscorlib (mscorlib.dll 内)

Dim instance As StrongNameIdentityPermission Dim target As IPermission Dim returnValue As IPermission returnValue = instance.Union(target)
戻り値
現在のアクセス許可と指定したアクセス許可の和集合を表す新しいアクセス許可。


Union を呼び出すと、現在のアクセス許可と指定したアクセス許可の両方が表す操作をすべて表すアクセス許可が作成されます。いずれかのアクセス許可を要求し、その要求が満たされた場合、両者の和集合を表すアクセス許可に対する要求も満たされます。
アクセス許可と null 参照 (Visual Basic では Nothing) の和集合では、アクセス許可は null 参照 (Visual Basic では Nothing) にはなりません。アクセス許可とそのアクセス許可のサブセットの和集合では、アクセス許可に残りの部分が含まれます。その他の組み合わせでは、ArgumentException 例外がスローされます。

次に示すのは、Union メソッドを使用した場合の結果を示すコード例です (メソッドの使用方法を示すものではありません)。このコード例は、StrongNameIdentityPermission クラスのトピックで取り上げているコード例の一部分です。よりよく理解するためには、コード全体を記述して実行し、その出力を確認することをお勧めします。
' Union creates a new permission that is the union of the current permission and the specified permission. Private Function UnionDemo() As Boolean Dim returnValue As Boolean = True Dim snIdPerm1, snIdPerm2 As StrongNameIdentityPermission Dim snIdPerm3 As IPermission snIdPerm1 = New StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", New Version("1.0.0.0")) snIdPerm2 = New StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.MyFile", New Version("1.0.0.0")) snIdPerm3 = CType(snIdPerm1.Union(snIdPerm2), StrongNameIdentityPermission) Try Console.WriteLine("The union of MyCompany.MyDepartment.*" + "and MyCompany.MyDepartment.MyFile is " + CType(snIdPerm3, StrongNameIdentityPermission).Name.ToString()) Catch e As Exception Console.WriteLine("An expected exception was thrown: " + e.Message) End Try Return returnValue End Function 'UnionDemo
// Union creates a new permission that is the union of the current permission and the specified permission. private bool UnionDemo() { bool returnValue = true; StrongNameIdentityPermission snIdPerm1, snIdPerm2; IPermission snIdPerm3; snIdPerm1 = new StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", new Version("1.0.0.0")); snIdPerm2 = new StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.MyFile", new Version("1.0.0.0")); snIdPerm3 = (StrongNameIdentityPermission)snIdPerm1.Union(snIdPerm2); try { Console.WriteLine("The union of MyCompany.MyDepartment.*" + "and MyCompany.MyDepartment.MyFile is " + ((StrongNameIdentityPermission)snIdPerm3).Name.ToString()); } catch (Exception e) { Console.WriteLine("An expected exception was thrown: " + e.Message); } return returnValue; }
// Union creates a new permission that is the union of the current permission and the specified permission. bool UnionDemo() { bool returnValue = true; StrongNameIdentityPermission^ snIdPerm1; StrongNameIdentityPermission^ snIdPerm2; IPermission^ snIdPerm3; snIdPerm1 = gcnew StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", gcnew Version("1.0.0.0")); snIdPerm2 = gcnew StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.MyFile", gcnew Version("1.0.0.0")); snIdPerm3 = dynamic_cast<StrongNameIdentityPermission^>(snIdPerm1->Union( snIdPerm2 )); snIdPerm3 = snIdPerm1->Union( snIdPerm2 ); try { Console::WriteLine("The union of MyCompany.MyDepartment.*" + "and MyCompany.MyDepartment.MyFile is " + (dynamic_cast<StrongNameIdentityPermission^>(snIdPerm3))->Name); } catch (Exception^ e) { Console::WriteLine("An expected exception was thrown: " + e->Message); } return returnValue; }

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- StrongNameIdentityPermission.Union メソッドのページへのリンク