Export (0) Print
Expand All

FileDialogPermission.Union Method

Creates a permission that is the union of the current permission and the specified permission.

Namespace: System.Security.Permissions
Assembly: mscorlib (in mscorlib.dll)

public override IPermission Union (
	IPermission target
)
public IPermission Union (
	IPermission target
)
public override function Union (
	target : IPermission
) : IPermission
Not applicable.

Parameters

target

A permission to combine with the current permission. It must be of the same type as the current permission.

Return Value

A new permission that represents the union of the current permission and the specified permission.

Exception typeCondition

ArgumentException

The target parameter is not a null reference (Nothing in Visual Basic) and is not of the same type as the current permission.

The result of a call to Union is a permission that represents all operations represented by both the current permission and the specified permission. Any demand that passes either permission passes their union.

The following code example shows how the Union method performs if you execute the method from your code. For the complete code example, see the FileDialogPermission class.

NoteNote:

The code example is intended to show the behavior of the method, not to demonstrate its use. In general, the methods of permission classes are used by the security infrastructure; they are not typically used in applications.

private bool UnionDemo()
{
    bool returnValue = true;

            fileDialogPerm3 = (FileDialogPermission)fileDialogPerm1.Union(fileDialogPerm2);

            if (fileDialogPerm3 == null)
            {
                Console.WriteLine("The union of " + fileDialogPerm1.Access + 
                    " and " + fileDialogPerm2.Access + " is null.");
            }
            else
            {
                Console.WriteLine("The union of " + fileDialogPerm1.Access + " and " +
                    fileDialogPerm2.Access + " = " +
                    ((FileDialogPermission)fileDialogPerm3).Access.ToString());
            }

    return returnValue;

}

// Union creates a new permission that is the union of 
// the current permission and the
// specified permission.
private boolean UnionDemo() 
{
    boolean returnValue = true;
    FileDialogPermissionAccess fileDialog1[] = 
        new FileDialogPermissionAccess[1];
    FileDialogPermissionAccess fileDialog2[] = 
        new FileDialogPermissionAccess[1];
    FileDialogPermission fileDialogIdPerm1[] = 
        new FileDialogPermission[1];
    FileDialogPermission fileDialogIdPerm2[] = 
        new FileDialogPermission[1];
    IPermission fileDialogIdPerm3;
    FileDialogGenerator fileDialogGen1 =  
        new FileDialogGenerator();
    FileDialogGenerator fileDialogGen2 =  
        new FileDialogGenerator();
    fileDialogGen1.ResetIndex();
    while(fileDialogGen1.CreateFileDialog(fileDialogIdPerm1, 
        fileDialog1)) {
        if (fileDialogIdPerm1[0] == null) {
            continue ;
        }
        Console.WriteLine("************************" 
            + "**********************************\n");
        fileDialogGen2.ResetIndex();
        
        while(fileDialogGen2.CreateFileDialog(fileDialogIdPerm2, 
            fileDialog2)) {
            if (fileDialogIdPerm2[0] == null) {
                continue ;
            }
            fileDialogIdPerm3 =((FileDialogPermission)(
                fileDialogIdPerm1[0].Union(fileDialogIdPerm2[0])));
            fileDialogIdPerm3 = fileDialogIdPerm1[0].
                Union(fileDialogIdPerm2[0]);
            
            if (fileDialogIdPerm3 == null) {
                Console.WriteLine(("The union of " + fileDialog1[0] 
                    + " and " + fileDialog2[0] + " is null."));
            }
            else {
                Console.WriteLine(("The union of " 
                    + fileDialogIdPerm1[0].get_Access() + " and " 
                    + fileDialogIdPerm2[0].get_Access() + " = " 
                    + ((FileDialogPermission)(fileDialogIdPerm3)).
                    get_Access().ToString()));
            }
        }
    }
    return returnValue ;
} //UnionDemo

Windows 98, Windows Server 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

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft