本文整理汇总了C#中IPermission.Union方法的典型用法代码示例。如果您正苦于以下问题:C# IPermission.Union方法的具体用法?C# IPermission.Union怎么用?C# IPermission.Union使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPermission
的用法示例。
在下文中一共展示了IPermission.Union方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddPermission
// methods
public IPermission AddPermission (IPermission perm)
{
if ((perm == null) || _readOnly)
return perm;
// we don't add to an unrestricted permission set unless...
if (state == PermissionState.Unrestricted) {
// identity permissions can be unrestricted under 2.x
{
// we return the union of the permission with unrestricted
// which results in a permission of the same type initialized
// with PermissionState.Unrestricted
return (IPermission) Activator.CreateInstance (perm.GetType (), psUnrestricted);
}
}
// we can't add two permissions of the same type in a set
// so we remove an existing one, union with it and add it back
IPermission existing = RemovePermission (perm.GetType ());
if (existing != null) {
perm = perm.Union (existing);
}
// note: Add doesn't copy
list.Add (perm);
return perm;
}
示例2: AddPermission
public virtual IPermission AddPermission (IPermission perm)
#endif
{
if ((perm == null) || _readOnly)
return perm;
// we don't add to an unrestricted permission set unless...
if (state == PermissionState.Unrestricted) {
#if NET_2_0
// identity permissions can be unrestricted under 2.x
{
#else
// we're adding identity permission as they don't support unrestricted
if (perm is IUnrestrictedPermission) {
#endif
// we return the union of the permission with unrestricted
// which results in a permission of the same type initialized
// with PermissionState.Unrestricted
return (IPermission) Activator.CreateInstance (perm.GetType (), psUnrestricted);
}
}
// we can't add two permissions of the same type in a set
// so we remove an existing one, union with it and add it back
IPermission existing = RemovePermission (perm.GetType ());
if (existing != null) {
perm = perm.Union (existing);
}
// note: Add doesn't copy
list.Add (perm);
return perm;
}
[MonoTODO ("CAS support is experimental (and unsupported). Imperative mode is not implemented.")]
[SecurityPermission (SecurityAction.Demand, Assertion = true)]