除了语法之外,在使用C# 4.0时有哪些优点?
DynamicObject.TryInvokeMember(InvokeMemberBinder binder, object[] args, out object result)
与只调用此签名的非动态方法相比:
public object MethodParser(string methodName, Dictionary<string, object> arguments)
methodName是“方法”的名称,arguments是参数名称和参数值的字典(MethodParser只是一个任意名称)。
换句话说,调用
foo.NonExistentMethod(arg1:"a1", arg2:3.14m)
结束
foo.MethodParser("NonExistentMethod", new Dictionary<string, object>(){{"arg1", "a1"}, {"arg2": 3.14m}})