2009-01-19 95 views
2

问候的宿主程序,拦截方法访问上的IronPython

多数时候我看到周围关于代理的对象为建设信息假定存在一个类型的地方,它定义成员被代理。我的问题是:我不能有任何这样的类型。

为了使问题更简单,我所拥有的是将字符串映射到对象的字典。我也有getter和setter来处理这本词典。

我的目标是在IronPython中为这些获取者和设置者提供透明访问,就好像他们是一个类的真实属性一样。例如,在一个python脚本如下代码:

x.result = x.input * x.percentage; 

...实际上代表像在宿主语言:

x.SetProperty("result", x.GetProperty("input") * x.GetProperty("percentage")); 

而且,“X”这里是由主机程序给定。有任何想法吗?请记住,我无法负担创建一个类型存根...理想情况下,我会很高兴,如果以某种方式,我可以拦截每个对脚本语言的特定对象的属性/方法的调用到主机程序。

回答