Selon la documentation MSDN sur le StringComParer. OrdinalInignorecase Code>
Propriété: P>
La propriété OrdinalInignorecase renvoie une instance d'une classe anonyme dérivée du StringComParer classe. P> blockQuote>
Est-ce une fonctionnalité que je suis inconnue avec des types anonymes avec héritage? Ou par "Classe anonyme", l'auteur a simplement signé "la classe interne dérivant de
stringcomparer code>, non visible au code client"? P>
4 Réponses :
Le compilateur em> peut créer des types anonymes qui héritent d'un autre type - vous ne pouvez pas. C'est dommage, comme ce serait une fonctionnalité froide pour créer un type anonyme sur la mouche qui hérite d'une autre classe ou implémente une interface. P>
Oui, créer un type anonyme implémente une interface serait un peu propre.
Ce n'est pas un type anonyme dans la signification C # normale du terme. P>
C'est juste un type interne, vous ne connaissez donc pas le nom de celui-ci: vous ne pouvez pas vous référer au type exact de votre code. P>
Merci; C'est fondamentalement ce que je me demandais. J'ai donné à ce +1 mais j'ai accepté la réponse de la volonté, car il s'est effectivement allé à la question de regarder le code source (dans le réflecteur, je suppose).
Le code source est téléchargeable à partir de la SP (bien que leur projet de source de référence soit un shamble honteux) - Je l'ai également indexé par Windows, il est donc très rapide de regarder ce genre de choses. référencesSource.microsoft.com/netframework.aspx
Le type anonyme est
Chuck Norris connaît le nom du type anonyme.
Juste, mais je n'étais pas sûr si cette i> est ce que la documentation signifiait même par "anonyme" (le type généré par le compilateur fourni par, par exemple, la fonctionnalité des types anonymes anonymes de C #). Dessons, de la réponse de la volonté, c'est juste une signification différente.
Si vous regardez le code source de StringComParer, vous pouvez voir que Orginalignorecase renvoie une instance d'OrdinalComerer, qui est dérivé de StringComParer. P>
Il n'y a rien de "anonymous" à ce sujet que je peux voir, c'est juste que c'est interne em> afin que vous ne puissiez pas le voir de l'extérieur du cadre. p>
Merci de faire ce que j'étais trop paresseux pour faire - regarder la source réelle;)
Dupliqué possible de Un C # Anonymous classe implémente une interface?