IPermission.IsSubsetOf(IPermission) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のアクセス許可が、指定したアクセス許可のサブセットであるかどうかを判断します。
public:
bool IsSubsetOf(System::Security::IPermission ^ target);
public bool IsSubsetOf (System.Security.IPermission? target);
public bool IsSubsetOf (System.Security.IPermission target);
abstract member IsSubsetOf : System.Security.IPermission -> bool
Public Function IsSubsetOf (target As IPermission) As Boolean
パラメーター
- target
- IPermission
サブセットの関係にあるかどうかをテストするアクセス許可。 このアクセス許可は、現在のアクセス許可と同じ型であることが必要です。
戻り値
現在のアクセス許可が、指定したアクセス許可のサブセットの場合は true
。それ以外の場合は false
。
例外
target
パラメーターが null
でなく、また現在のアクセス許可と同じ型でもありません。
例
次のコード例では、 メソッドの実装を IsSubsetOf 示します。 このコード例は、IPermission クラスのために提供されている大規模な例の一部です。
// Called by the Demand method: returns true
// if 'this' is a subset of 'target'.
public:
virtual bool IsSubsetOf(IPermission^ target) override
{
// If 'target' is null and this permission allows nothing,
// return true.
if (target == nullptr)
{
return (int)stateFlags == 0;
}
// Both objects must be the same type.
SoundPermission^ soundPerm = VerifyTypeMatch(target);
// Return true if the permissions of 'this'
// is a subset of 'target'.
return stateFlags <= soundPerm->stateFlags;
}
// Called by the Demand method: returns true if 'this' is a subset of 'target'.
public override Boolean IsSubsetOf(IPermission target)
{
// If 'target' is null and this permission allows nothing, return true.
if (target == null) return m_flags == 0;
// Both objects must be the same type.
SoundPermission soundPerm = VerifyTypeMatch(target);
// Return true if the permissions of 'this' is a subset of 'target'.
return m_flags <= soundPerm.m_flags;
}
' Called by the Demand method: returns true if 'this' is a subset of 'target'.
Public Overrides Function IsSubsetOf(ByVal target As IPermission) As [Boolean]
' If 'target' is null and this permission allows nothing, return true.
If target Is Nothing Then
Return m_flags = 0
End If
' Both objects must be the same type.
Dim soundPerm As SoundPermission = VerifyTypeMatch(target)
' Return true if the permissions of 'this' is a subset of 'target'.
Return m_flags <= soundPerm.m_flags
End Function 'IsSubsetOf
注釈
現在のアクセス許可が、指定したアクセス許可に完全に含まれる一連の操作を指定している場合、現在のアクセス許可は、指定されたアクセス許可のサブセットです。 たとえば、C:\example.txt へのアクセスを表すアクセス許可は、C:\ へのアクセスを表すアクセス許可のサブセットです。 このメソッドが を true
返す場合、現在のアクセス許可は、指定されたアクセス許可よりも保護されたリソースへのアクセスを表しません。
次のステートメントは、 メソッドのすべての実装 IsSubsetOf で true である必要があります。
X
、Y
、および Z
は ではないnull
オブジェクトを表しますIPermission。
X
.IsSubsetOf(X
) は を返しますtrue
。X
.IsSubsetOf(Y
) は と同じ値Y
を返します。IsSubsetOf(X
) が同じアクセス許可のセットを表す場合X
Y
のみ。の場合
X
。IsSubsetOf(Y
) とY
。IsSubsetOf(Z
) はどちらも 、 をX
返しますtrue
。IsSubsetOf(Z
) は を返しますtrue
。
が、アクセス許可の状態を持つ空のNoneオブジェクトを表しY
、 が であるオブジェクトをIPermission表す場合X
。null
X
IPermissionIsSubsetOf(Y
) は を返しますtrue
。 が空のアクセス許可でもある場合 Z
、複合設定操作 は です X
。Union(Z)。2 つの空のアクセス許可の和集合が空のアクセス許可であるため、IsSubsetOf(Y) も返されます true
。
適用対象
.NET