public static int MainMethod() { dynamic mc = new MemberClass(); var tc = new { A1 = (int)mc.Method_ReturnsInt <int>(0), A2 = (string)mc.Method_ReturnsString <int, int>(1, 2) } ; if (tc != null && tc.A1 == 1 && tc.A2 == "foo") { return(0); } return(1); }