2010-09-02 25 views
9

Estoy buscando una clase abstracta en el navegador de objetos de Visual Studio 2010. Me gustaría encontrar todas las clases que descienden de esta clase abstracta para poder elegir la mejor para implementar en mi aplicación. No tengo el código fuente para este ensamblaje, por lo que no puedo usar la función find in files.Encontrar descendientes de clase en Visual Studio 2010

Desafortunadamente, parece que no puedo encontrar la manera de hacerlo. Los documentos de Visual Studio y Google simplemente devuelven artículos completamente irrelevantes, por lo tanto, estoy usando la terminología incorrecta o simplemente esta característica no existe.

El mejor consejo que he recibido es "analizar el conjunto con reflector Redgate", pero seguramente tiene que haber una forma mejor.

Gracias por su tiempo.

+0

Posible duplicado de [Visual Studio: ¿Cómo se muestran todas las clases heredadas de una clase base?] (Http://stackoverflow.com/questions/282377/visual-studio-how-do-i-show-all- clases-inherited-from-a-base-class) –

Respuesta

4

Instale el Visual Studio Productivity Power Tools, luego use su información sobre herramientas trucada.

+0

Perfecto: moví el mouse sobre el tipo de clase, hice clic en "clases derivadas", hice algunas comprobaciones en segundo plano y me mostró los tipos derivados. Muchas gracias. –

+0

Agregué las herramientas de potencia de productividad a VS 2012 Premium. No recibo la nueva información sobre herramientas, y no puedo encontrar nada al respecto en los documentos para estas herramientas (o en los documentos de VS2010 Power Tools): http://visualstudiogallery.msdn.microsoft.com/3a96a4dc-ba9c- 4589-92c5-640e07332afd –

+1

@HawkeyeParker: esta característica fue eliminada en 2012. Lo siento. – SLaks

1

Si desea navegar convenientemente a través de una jerarquía de clases, no estará contento con el simple y vanidoso Visual Studio. Resharper y (creo) CodeRush ofrecen tal funcionalidad. Para el último hay un express edition, que es gratis. Puede instalarlos todos como complemento de Visual Studio.

5

En el cuadro desplegable "Buscar" del Examinador de objetos, seleccione un elemento que no sea "Mi solución" o "Todos los componentes".

Por ejemplo, seleccione "Framework 4" o" .NET Framework 4.5"

+0

Eso no parece ayudar en VS2012. ¿Es eso una función solo para 2010? –

+1

También debe marcar "Mostrar tipos derivados" en el menú desplegable "Configuración del navegador de objetos" ubicado en el lado derecho del menú desplegable "Buscar" –

+0

Lo he usado antes, lo juro, pero ¿dónde "Mostrar tipos derivados"? ¿ir? Tengo todas las otras opciones, pero no esa, en VS 2010 SP1. Como alternativa, ILSpy funciona bien. Preferiría quedarme dentro del conjunto de herramientas VS por defecto. – JMD

7

Puede utilizar el Explorador de soluciones para este propósito: 1) Encontrar la clase base en los explora Solution (se puede utilizar la línea de búsqueda) 2) Haga clic derecho sobre la clase base en el Explorador de soluciones 3) Haga clic en "tipos derivados"

Para volver a la principal Explorador de soluciones vistas clic en el botón "Inicio" en la parte superior del Explorador de soluciones.

+0

Creo que te refieres al Navegador de soluciones. Esto me dio lo que necesitaba, mientras permanecía en el conjunto de herramientas VS. ¡Gracias! – JMD

+0

Sí, para VS2010 es "Solution Navigator" de la extensión "Productivity Power Tools". Pero en VS 2012 o VS 2013 esta funcionalidad se incluye en el "Explorador de soluciones". –

+0

Thx - Es bueno saber dónde está esto en VS 2013.En mi humilde opinión, es aún menos conveniente que la vista de Jerarquía de tipos de ReSharper, que muestra todos los niveles del árbol de herencia a la vez, en lugar de forzar a uno a ver solo una pequeña parte de la información a la vez. La opción "Es usado por" de ese menú VS parece potencialmente útil. Aunque nuevamente, los "Usos de" ReSharper han sido mucho más prácticos. Debido a que puede tener múltiples búsquedas abiertas en pestañas, cambie fácilmente a las anteriores. – ToolmakerSteve