2009-02-11 7 views

Respuesta

18

GetExportedTypes() No incluye los tipos/privadas/interna protegidos. Según la pregunta relacionada en la pregunta de Alexander a continuación, los tipos internos no están incluidos, incluso si fueran visibles para un ensamblado a través de InternalsVisibleToAttribute.

getTypes() incluye todos los tipos.

+0

Es particularmente confuso que no se devuelvan los tipos 'protected' anidados y los tipos' protected internal' anidados, cuyos tipos de declaración son públicos. Un ejemplo con [TypeConverter + SimplePropertyDescriptor' '] (http://msdn.microsoft.com/en-us/library/system.componentmodel.typeconverter.simplepropertydescriptor.aspx):' MyClass clase: System.ComponentModel.TypeConverter {void estático Main() {var exported = typeof (SimplePropertyDescriptor); Console.WriteLine (exported.IsVisible)/* escribe False * /; }} ' –

7

GetExportedTypes() declaraciones de tipos que son visibles fuera de la asamblea de que se trate. "Visible" significa tipos públicos y tipos públicos anidados dentro de otros tipos públicos.

+0

lo que significa todo tipo de público se devuelve cuando se utiliza GetExportedTypes()? ¿Qué hace GetTypes() entonces? – Viks

3

pequeño comentario acerca InternalsVisibleToAttribute y this question.

Incluso si la llamada la realiza un ensamblado con un atributo InternalsVisibleTo, GetExportedTypes() no devolverá internal tipos.

Así, GetExportedTypes() sólo devuelve public tipos.

Cuestiones relacionadas