如果在调用方法时它们可能不存在,它们的用途是什么?
这是否意味着您可以在动态对象上动态创建方法?
这有什么实际用处?
您将无法真正动态创建该方法 - 但您可以获得IDynamicMetaObject
(通常通过扩展DynamicObject
)实现,以响应该方法的存在.
用途:
使用弱API(例如办公室)对COM对象进行编程
调用Ruby/Python等动态语言
潜在地制作"可探索的"对象 - 想象一个类似XPath的查询,但通过方法/属性调用,例如 document.RootElement.Person[5].Name["Attribute"]
毫无疑问,我们尚未想到更多:)