2009-09-24 13 views
6

Tengo una solución .Net (C#). La solución contiene muchos proyectos. Los proyectos no fueron implementados por mí. No es un marco, significa que necesito tener la cantidad de métodos/propiedades públicas lo menos posible. Mi tarea es identificar métodos y propiedades que no se usan, pero que existen en los proyectos. Bueno, puedo encontrar métodos privados que no se usan con R #. Pero no está del todo claro cómo encontrar public métodos/propiedades que no se utilizan.Cómo encontrar fácilmente métodos/propiedades públicos no utilizados

Escuché que tienen la herramienta NDepend, pero no es una herramienta muy simple, ¿o sí?

Entonces, la pregunta es: ¿podría indicar una herramienta que pueda usarse para identificar métodos que no se usan en una solución? Está bien que tenga una herramienta de línea de comandos o algo bastante simple.

UPD: Intenté utilizar NDepend de prueba.

Bueno, antes que nada, parece que es posible ver los métodos públicos (las propiedades se representan como métodos get_set_) que no se utilizan en este ensamblaje en particular.

Pero NDepend no reconoce si el método público se utiliza desde otro proyecto/ensamblaje, que es parte de la solución y muestra el método como no utilizado. Pero esto no es cierto.

UPD2: mcintyre321 recomienda utilizar R #. Por favor, lea un primer comentario a continuación.

+2

¡Solo asegúrese de que lo que decida eliminar no se llame a través de Reflection! – RichardOD

+0

Gracias por la nota. Estoy seguro de que la reflexión no se usa en mi solución. Pero los servicios web son: - \ – Antipod

+0

He eliminado el enlace de la imagen, ya que parece estar muerto y estaba dirigiendo a un https url – Liam

Respuesta

7

Si activa el análisis de toda la solución en ReSharper (5.0 y superior), los marcará por usted. Esto incluye métodos públicos.

+0

Gracias por el comentario. Desafortunadamente, no ayudó. Al final R # solo muestra que algunas rutas css y asxc no fueron encontradas/válidas. Pero no dijo nada sobre los métodos/propiedades públicos. – Antipod

+0

Gracias por la imagen. La lista "Errores en la solución" no tiene errores y esto es exactamente lo que tenía. Ahora entiendo lo que querías decir y creo que puede ayudar. ¿Es posible obtener una lista con todos los métodos no utilizados en la solución en una "ventana" usando R #, por ejemplo en la lista de errores? – Antipod

+0

Puede configurar la severidad de la inspección en las opciones de R # para que se muestren como advertencias o errores. – mcintyre321

2

de Heck lo he hecho vieja escuela. Solo comente los métodos que no creo que se estén usando y compilando. Si recibo un error, lo dejo ahí.

+0

Pero no es una buena manera de resolver el problema si tienes muchas clases. En este caso, es mucho trabajo. Somos programadores aquí y necesitamos pensar cómo automatizar el proceso. Gracias. – Antipod

+0

Además, solo recibe errores si se hace referencia directa al método, lo que no siempre es el caso, p. para suscriptores de eventos en un contenedor de IoC – armannvg

Cuestiones relacionadas