You can also choose to follow Microsoft Guidelines or you own custom standards, group rule sets into profiles, generate your custom standard documentation, efficiently work with existing/legacy projects, avoid false positives.
The Enterprise Edition adds Team features, Code Metrics, Statistics, enhanced reporting.
| | CodeIt.Right | FxCop |
| | Scans and analyzes source code | Runs on compiled assemblies (you have to compile code to use it) |
| Correction | Corrects violations and code smells automatically | N/A |
| Refactoring to patterns | Automatically implements and corrects most common coding patterns like Dispose/Finalize, ISerializable, Custom Serialization, etc | N/A |
| Visual Studio Integration | Natively integrates into Visual Studio IDE; quick navigation to the violation source code; highlights modifications in the editor; safe Undo/Redo. | Basic/Command line |
| ASP.NET | ASPX/ASCX/ASMX pages, in-page code, code behind source | Only compiled code behind assemblies |
| Local variables/constants | Includes rules that are targeting local variables/constants and any data that is present in the source code | Not possible in FxCop - the data is lost in the MSIL |
| Follow your own standards | Includes Microsoft Guidelines and best industry practices out of the box. Allows to define your own standard to follow - tweak the rule set to your needs without having to write custom rules (which is an option too). For example, go as crazy as enforce Hungarian naming conventions; or convert existing project with Hungarian notation to the new MS style conventions. | Strictly enforces Microsoft Guidelines - inflexible and enforces the set with no options to configure |
| Define custom rule set | Profiles - configure multiple rule subsets and quickly switch between them. Share profiles between the Team members or (EE) push them to the Team. | N/A |
| Rule Instances | Introduces Rule Instances - multiple instances of a single rule that are configured (via rule Properties) to your Team needs | Only allows to turn off specific rule, cannot configure/tweak |
| Reducing noise (false positives) | - Exclude violation in Project
- Exclude violation in source code
- Exclude Violation, Rule, File, Project
- Exclude code regions
- Custom Profiles
- Override default rule severity, target, scope, etc
| - Exclude violation in Project
- Exclude violation in source code
|
| Severity Threshold | Unique feature - Severity Threshold - allows to concentrate on most critical violations first and drill down from most severe issues to simple warnings. | N/A |
| Scan entire solution, project, folder or individual file | Scan projects only |
| Create own guidelines documentation | Generate Team Guidelines document within a mouse click, with description, code samples, etc - based on your custom configured Profile | |
| Team features | (EE) separate modules to (a) author / configure team standards and (b) run analysis and correction based on the team standard configured by Team Lead/Architect; publish and push (share) Team standard configuration to the Team members; Team usage statistics | N/A |
| Reporting | Flexible reporting/pivot that can be exported and printed | N/A |
| Code Metrics | Available (EE); can be exported, printed, emailed | N/A |
| Command line output | Violations, Code Metrics (EE) | Violations only |
| Command line filtering | Solution, Project, Profile, Severity Threshold | Project, Assembly |
| Command line delivery | File, Send via email | File only |
| Command line integration | Command line tool, MsBuild and NAnt tasks | Command line tool |
| Update delivery | Rule Library auto-update - get new rules when we publish them
| N/A |