Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net expando对象是如何在内部实现的_.net - Fatal编程技术网

.net expando对象是如何在内部实现的

.net expando对象是如何在内部实现的,.net,.net,我真的很想知道.Net 4.0中的Expando对象是如何在内部实现的?Use,它现在支持.Net 4.0。它在内部实现为一个字典 看看Alexandra Rusina关于这个话题的博客,还有我的 找到答案的可靠方法是使用:您不必弄乱Reflector,DLR的源代码随时可供使用。评论也很好。您可以在src\Runtime\Microsoft.Scripting.Core\Actions\ExpandoObject.cs中找到ExpandoObject的源代码 ExpandoObject的数据存

我真的很想知道.Net 4.0中的Expando对象是如何在内部实现的?

Use,它现在支持.Net 4.0。

它在内部实现为一个字典


看看Alexandra Rusina关于这个话题的博客,还有我的

找到答案的可靠方法是使用:

您不必弄乱Reflector,DLR的源代码随时可供使用。评论也很好。您可以在src\Runtime\Microsoft.Scripting.Core\Actions\ExpandoObject.cs中找到ExpandoObject的源代码


ExpandoObject的数据存储是一个ExpandoData,可在同一源文件中使用。这些值存储在简单对象[]中。ExpandoClass(同一目录)以简单的字符串[]跟踪键。ExpandoObject显然没有像前面所说的那样使用字典,但它实现了IDictionary。

你是说现在支持.Net 4.0的字典吗?@David:不知道你是不是色盲?你博客上的颜色在液晶显示器上闪烁。对不起,米奇,不,我不是色盲。你说它们耀眼是什么意思?它实现了IDictionary,但不使用字典。我在帖子中留下了一个指向源代码的链接。第二个链接似乎已被劫持,并不断将我重定向到垃圾邮件页面。更新了该链接。(另外,请查看下面的Hans答案。我写那个博客已经8年了,现在我做JavaScript full tim,所以我不保证我以前的博客的有用性)