WebPermission.IsSubsetOf メソッド
現在の WebPermission が、指定したオブジェクトのサブセットかどうかを判断します。
Overrides Public Function IsSubsetOf( _
ByVal target As IPermission _) As Boolean Implements IPermission.IsSubsetOf
[C#]
public override bool IsSubsetOf(IPermissiontarget);
[C++]
public: bool IsSubsetOf(IPermission* target);
[JScript]
public override function IsSubsetOf(
target : IPermission) : Boolean;
パラメータ
- target
現在の WebPermission と比較する WebPermission 。
戻り値
現在のインスタンスが target パラメータのサブセットである場合は true 。それ以外の場合は false 。ターゲットが null 参照 (Visual Basic では Nothing) の場合は、メソッドは無制限ではない現在の空のアクセス許可に対して true を返します。それ以外の場合は false を返します。
実装
例外
例外の種類 | 条件 |
---|---|
ArgumentException | 指定するパラメータが、 WebPermission のインスタンスではありません。 |
NotSupportedException | 現在のインスタンスに Regex エンコードされた権利が格納されていて、指定するインスタンスには同じ権利がない場合。 |
解説
現在の WebPermission が、関連付けられたリソース セットを指定し、そのセット全体が target パラメータによって格納される場合は、現在の WebPermission が target のサブセットになります。このメソッドは、 IsSubsetOf をオーバーライドし、 IPermission インターフェイスをサポートするために実装されます。
使用例
[Visual Basic, C#, C++] IsSubsetOf を使用して、 WebPermission の 1 つのインスタンスにあるアクセス権が、 WebPermission の別のインスタンスにあるかどうかを判断する例を次に示します。
' Create the target permission.
Dim targetPermission As New WebPermission()
targetPermission.AddPermission(NetworkAccess.Connect, New Regex("www\.contoso\.com/Public/.*"))
' Create the permission for a URI matching target.
Dim connectPermission As New WebPermission()
connectPermission.AddPermission(NetworkAccess.Connect, "www.contoso.com/Public/default.htm")
'The following statement prints true.
Console.WriteLine(("Is the second URI a subset of the first one?: " & connectPermission.IsSubsetOf(targetPermission)))
End Sub 'myIsSubsetExample
[C#]
// Create the target permission.
WebPermission targetPermission = new WebPermission();
targetPermission.AddPermission(NetworkAccess.Connect, new Regex("www\\.contoso\\.com/Public/.*"));
// Create the permission for a URI matching target.
WebPermission connectPermission = new WebPermission();
connectPermission.AddPermission(NetworkAccess.Connect, "www.contoso.com/Public/default.htm");
//The following statement prints true.
Console.WriteLine("Is the second URI a subset of the first one?: " + connectPermission.IsSubsetOf(targetPermission));
[C++]
// Create the target permission.
WebPermission* targetPermission = new WebPermission();
targetPermission->AddPermission(NetworkAccess::Connect, new Regex(S"www\\.contoso\\.com/Public/.*"));
// Create the permission for a URI matching target.
WebPermission* connectPermission = new WebPermission();
connectPermission->AddPermission(NetworkAccess::Connect, S"www.contoso.com/Public/default.htm");
//The following statement prints true.
Console::WriteLine(S"Is the second URI a subset of the first one?: {0}", __box(connectPermission->IsSubsetOf(targetPermission)));
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, Common Language Infrastructure (CLI) Standard