2010-08-05 6 views
4

Je parcourais les types dans mscorlib en utilisant le réflecteur (comme vous le faites ...) et suis tombé sur le IExpando interface, dans l'espace de noms System.Runtime.InteropServices.Expando.Qu'est-ce que IExpando et où est-il utilisé?

J'ai fait une recherche dans le réflecteur et même vérifié MSDN, il semble qu'aucun type dans mscorlib implémenter cette interface. Il n'y a également aucun exemple de code sur MSDN.

Est-ce que quelqu'un a implémenté cette interface dans son propre code?

Est-ce que quelqu'un sait à quoi il sert exactement?

Merci

+0

iirc, c'est quelque chose à voir avec les types dynamiques - mais je peux me tromper totalement. Juste regardé le lien et je crois qu'il vous permet d'ajouter des propriétés dynamiques au type dynamique. Quelqu'un d'autre sera bientôt avec une réponse appropriée, j'en suis sûr. – cristobalito

+0

Vérifiez 'Microsoft.JScript.JSObject' dans l'ensemble' Microsoft.JScript' - il existe différentes implémentations de l'interface IExpando. –

+0

Est Expando Espagnol? –

Répondre

5

Oui, il est un peu hors place aujourd'hui. C'est la déclaration gérée du type d'interface COM. Aussi présent, notez ComTypes.IExpando et InteropServices.UCOMIExpando. Interfaces de base pour les scripts d'exécution afin de mettre en œuvre des sacs de propriétés. En particulier pour Javascript, vérifiez this thread.

Microsoft avait de grands espoirs pour JScript, c'était un langage principal pris en charge par C#, VB.NET et C++ managé. Cela n'a pas fonctionné.

Oublié, mais pas tout à fait mort. La classe ExpandoObject est de retour dans .NET 4.0

Questions connexes