static void Main(string[] args) { CodeAccessPermission permissionA = new FileIOPermission(FileIOPermissionAccess.AllAccess, @"c:\"); CodeAccessPermission permissionB = new FileIOPermission(FileIOPermissionAccess.Read, @"c:\temp"); if (permissionB.IsSubsetOf(permissionA)) { System.Console.WriteLine("PermissionB is a subset of PermissionA"); } else { Console.WriteLine("PermissionB is NOT a subset of PermissionA"); } }
public void IsSubsetOf () { unrestricted = new FileIOPermission(PermissionState.Unrestricted); Assert.IsTrue(unrestricted.IsSubsetOf(unrestricted), "IsSubsetOf reflective test failed"); p = new FileIOPermission(FileIOPermissionAccess.Read, pathArrayGood); p.AllFiles = FileIOPermissionAccess.Append; p.AllLocalFiles = FileIOPermissionAccess.Write; Assert.IsTrue(p.IsSubsetOf(p), "#1 IsSubsetOf reflective test failed"); Assert.IsTrue(!unrestricted.IsSubsetOf(p), "#1 IsSubsetOf false test failed"); Assert.IsTrue(p.IsSubsetOf(unrestricted), "#1 IsSubsetOf true test failed"); p2 = new FileIOPermission(FileIOPermissionAccess.Append | FileIOPermissionAccess.Read, pathArrayGood2); p2.AllFiles = FileIOPermissionAccess.Append | FileIOPermissionAccess.Write; p2.AllLocalFiles = FileIOPermissionAccess.Write | FileIOPermissionAccess.Read; Assert.IsTrue(p2.IsSubsetOf(p2), "#2 IsSubsetOf reflective test failed"); Assert.IsTrue(p.IsSubsetOf(p2), "#2 IsSubsetOf true test failed"); Assert.IsTrue(!p2.IsSubsetOf(p), "#2 IsSubsetOf false test failed"); }