using System; public class C { event Func E; Func D; public static int Main () { var c = new C (); Func v = Foo; dynamic[] arr = new dynamic [] { v }; c.E += arr [0]; if (c.E.GetInvocationList ().Length != 1) return 1; c.D += arr [0]; if (c.D.GetInvocationList ().Length != 1) return 2; return 0; } static int Foo (int ii) { return 9; } }