2 using System.Reflection;
4 using System.Security.Permissions;
8 [SecurityPermission (SecurityAction.LinkDemand, ControlPrincipal=true)]
9 public static int Test ()
14 [SecurityPermission (SecurityAction.Deny, ControlPrincipal=true)]
15 static int TestReflectedCall ()
17 MethodInfo mi = typeof (Program).GetMethod ("Test", BindingFlags.Static | BindingFlags.Public);
19 Console.WriteLine ("*1* Couldn't reflect on call Test (abnormal).");
22 Console.WriteLine ("*0* Reflected on call Test (normal).");
23 // but invoking would throw a SecurityException!
27 [SecurityPermission (SecurityAction.Deny, ControlPrincipal=true)]
31 return TestReflectedCall ();
33 catch (SecurityException se) {
34 Console.WriteLine ("*2* Unexpected SecurityException.\n{0}", se);
38 Console.WriteLine ("*3* Unexpected Exception.\n{0}", e);