首页 新闻 会员 周边

如何实现这种调用方法

0
悬赏园豆:10 [已解决问题] 解决于 2012-02-21 10:57

现有的调用方式如下:

Dictionary<string, string> dic = new Dictionary<string, string>();

dic.add("WebSiteName","博客园");

提取的时候是这样的

var str=dic["WebSiteName"];

如何能实现通过对象直接调用属性的方法,添加的时候还是一样的,调用的时候是这样的:

var str=dic.WebSiteName;

在北落的主页 在北落 | 初学一级 | 园豆:159
提问于:2012-02-18 18:18
< >
分享
最佳答案
1

不能,除非将dic声明为dynamic,但是我估计你不是想这样的。

收获园豆:4
水牛刀刀 | 大侠五级 |园豆:6350 | 2012-02-18 23:00

看了下也就这样了

在北落 | 园豆:159 (初学一级) | 2012-02-21 10:56
其他回答(4)
0

似乎不可行,如果是脚本语言可能还行

收获园豆:1
I,Robot | 园豆:9783 (大侠五级) | 2012-02-18 19:27
0

把dic搞成类,把WebSiteName搞成这个类的属性,如何?

收获园豆:2
丁学 | 园豆:18730 (专家六级) | 2012-02-18 19:39

这样就没啥意义了,想法就是方便Dictionary这个泛型的调用

支持(0) 反对(0) 在北落 | 园豆:159 (初学一级) | 2012-02-18 20:56

@在北落: 那估计难了,想不出有什么办法

支持(0) 反对(0) 丁学 | 园豆:18730 (专家六级) | 2012-02-19 08:10
0

在JS可以,C#不行

收获园豆:1
artwl | 园豆:16736 (专家六级) | 2012-02-19 12:01
0

Dictionary提供的就是键值对的数据存储,要求通过键来取值,如果要实现楼主的效果,可以考虑用类或结构体

收获园豆:2
WaitingSky | 园豆:300 (菜鸟二级) | 2012-02-19 14:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册