FxCop no viene con sus propias características de fijación por el momento. Project Roslyn (destinado a ser lanzado en algún lugar después de VS11) proporcionará un nuevo motor para las reglas de análisis estático y viene con la fijación incorporada como característica.
Hay una serie de herramientas que proporcionan sus propias reglas de fijación. Unos pocos han sido mencionados antes:
Estos a veces el indicador Más o otras cosas que FxCop o StyleCop lo harían. Y aquí está el peligro de reglas contradictorias. Que ya está ocurriendo aquí y allá si eres una herramienta como FxCop.
Y hay algunos proyectos de código abierto que intentan proporcionar soluciones para las advertencias FxCop y StyleCop más comunes. No he probado esos para StyleCop, pero la mayoría de las herramientas de fijación automática FxCop realmente no funcionan bien, ya que hay muy pocas reglas de FxCop que sean realmente fáciles de solucionar.
Ninguna de estas herramientas podrá ayudarlo a corregir reglas personalizadas (o reglas que haya descargado de otras fuentes, como MSOCAF o proyectos de código abierto (FxCopContrib por ejemplo) u otros proyectos de Microsoft (como las reglas incluidas) en el Open Source Web Service Software Factory CTP).
Y, especialmente con las reglas de FxCop veo que, aunque lo que se marca, lo que parece muy simple de resolver, en realidad apunta a un problema mucho más grande.
- Tomemos como ejemplo la regla de rendimiento que le solicita que haga todos sus métodos estáticos. Esto en realidad te indica que tienes clases con baja cohesión. Simplemente marcar todo estático puede hacer que su código sea un poco más rápido, pero no mejorará su diseño y, con seguridad, hará que las pruebas y el mantenimiento de su código sean más difíciles a largo plazo.
- O la regla que menciona que debe proporcionar un proveedor de IFormat a cualquier método que tenga una sobrecarga que lo admita. Veo demasiados desarrolladores que acaban de poner CurrentCulture allí y terminan con eso. Sigue recibiendo errores de importación/exportación cuando transfieren archivos entre dos sistemas configurados de forma diferente. Como la globalización, la localización y la internacionalización son temas difíciles de abordar.
Esto aplica mucho menos a StyleCop, ya que el estilo de codificación a menudo no está relacionado con la implementación o el diseño subyacente real. Y parece que StylecopFixer es un gran complemento si no está usando el Resharper integration que ahora viene con StyleCop de forma predeterminada.
Como ya mencionó ReSharper: StyleCopForReSharper (http://www.codeplex.com/StyleCopForReSharper/) proporciona una corrección automática para las reglas de StyleCop. –