public void TestDemo2Reflection() { object reflectionCalc = new Calculator(); var calcType = reflectionCalc.GetType(); object res = calcType.InvokeMember( "Add", BindingFlags.InvokeMethod, null, Activator.CreateInstance(calcType), new object[] {10, 20}); int sum = Convert.ToInt32(res); Assert.AreEqual(30, sum); }
public void TestDemo2Dynamic() { dynamic calc = new Calculator(); Assert.AreEqual(30, calc.Add(10, 20)); }
public void TestDemo2Itf() { ICalc calc = new Calculator(); Assert.AreEqual(30, calc.Add(10, 20)); }
public void TestDemo2Object() { object calc = new Calculator(); //Assert.AreEqual(30, calc.Add(10, 20)); }
public void TestDemo2Static() { Calculator calc = new Calculator(); Assert.AreEqual(30, calc.Add(10, 20)); }