Beispiel #1
0
    public void CreateIntersect()
    {
// <Snippet1>
        // Create two WebPermission instances.
        WebPermission myWebPermission1 = new WebPermission();
        WebPermission myWebPermission2 = new WebPermission();

// <Snippet2>

        // Allow access to the first set of resources.
        myWebPermission1.AddPermission(NetworkAccess.Connect, "http://www.contoso.com/default.htm");
        myWebPermission1.AddPermission(NetworkAccess.Connect, "http://www.adventure-works.com/default.htm");

        // Check whether if the callers higher in the call stack have been granted
        // access permissions.
        myWebPermission1.Demand();

// </Snippet2>
        // Allow access right to the second set of resources.
        myWebPermission2.AddPermission(NetworkAccess.Connect, "http://www.alpineskihouse.com/default.htm");
        myWebPermission2.AddPermission(NetworkAccess.Connect, "http://www.baldwinmuseumofscience.com/default.htm");
        myWebPermission2.Demand();

// </Snippet1>

        // Display the attributes , values and childrens of the XML encoded instances.
        Console.WriteLine("Attributes and values of  first 'WebPermission' instance are :");
        PrintKeysAndValues(myWebPermission1.ToXml().Attributes, myWebPermission2.ToXml().Children);

        Console.WriteLine("\nAttributes and values of second 'WebPermission' instance are : ");
        PrintKeysAndValues(myWebPermission2.ToXml().Attributes, myWebPermission2.ToXml().Children);

// <Snippet3>

        // Create a third WebPermission instance via the logical intersection of the previous
        // two WebPermission instances.
        WebPermission myWebPermission3 = (WebPermission)myWebPermission1.Intersect(myWebPermission2);

        Console.WriteLine("\nAttributes and Values of  the WebPermission instance after the Intersect are:\n");
        Console.WriteLine(myWebPermission3.ToXml().ToString());

// </Snippet3>
    }