是否可以重载C#动态类型属性解析?

时间:2010-09-08 15:49:54

标签: c# dynamic

在转换为动态时,是否可以重载类型解析属性的方式?

基本上我想要做的就是像ExpandoObject那样你可以动态访问新属性,但不是那些属性是分配给它们的东西,我希望它们都是字符串的集合,当你访问一个时,它会调用一个字典Web服务,它返回该单词的所有定义。我希望它是动态的,以便您可以指定任何单词。

我认为用法是这样的:

dynamic dictionary = new DictionaryWebservice();
var awesome = dictionary.awesome;

foreach(var definition in awesome)
{
    // add definition to my output
}

这可能吗?

1 个答案:

答案 0 :(得分:3)

是的,从System.Dynamic.DynamicObject中获取您的类型。

请记住,从动态方法返回的所有内容都是dynamic。因此,即使var definition中的foreach也属于dynamic类型。