All Code Issues in a Solution FolderAs part of code review, ReSharper can display all code issues that it detects in a certain folder, project, or even in the entire solution. You can then either fix detected issues yourself or share ReSharper inspection results with relevant developers.
Inappropriate Static Member AccessReSharper detects access to a static member of a type via its derived type and suggests using base class qualifier instead.
Inconsistent Method NamingReSharper detects that a method name doesn't respect accepted naming conventions and suggests renaming it to use UpperCamelCase.
Parameter Type too SpecificReSharper detects that a parameter could be of a more generic type and suggests changing it to IEnumerable<T>.
Use LINQ Instead of a LoopReSharper detects a foreach loop that can be converted into a LINQ query and suggests to do so for the sake of code compactness and readability.
Redundant Register DirectiveReSharper detects that a directive registering a user control in an ASP.NET markup file is redundant and suggests removing it, as well as any other unused directives in that file.
Structural Search and ReplaceEven if ReSharper doesn't detect code that you know is wrong, you can write a search pattern describing the code smell that you want to find, and a replace pattern that defines how to improve upon that code smell. Essentially, you're writing your own code inspections and quick-fixes.
Creating Code from UsageWhen ReSharper detects code that it can't find a matching declaration for, it offers multiple ways to create the declaration. Depending on the context, suggestions may include creating a field, parameter, class, interface, and other language entities.
ReSharper Works Smoothly in VSAll ReSharper functionality is available in Visual Studio.
ReSharperAll ReSharper functionality is available in Visual Studio. Specific for that version of VS is the out-of-the-box support for both Light and Dark color themes.
Support for Quick Launch MenuAll ReSharper commands can be found and invoked via the new Quick Launch menu.
Solution Explorer AwarenessReSharper commands are available on all nodes of Solution Explorer, including the newly introduced file member nodes.
Architecture Explorer SupportReSharper 7 integrates into Visual Studio 2012 Architecture Explorer, exposing its refactorings, navigation actions and more commands right from architecture entries.
Dependency Graph SupportAs well as supporting the Architecture Explorer in Visual Studio 2012 Ultimate Edition, we also provide access to ReSharper functionality from its Dependency Graph.
Go to SymbolYou can navigate to any symbol in a solution by name. CamelHumps support lets you specify symbols using abbreviations (for example, ap instead of AddProduct), and for more precise filtering, you can specify parts of a path to the symbol or a namespace that it belongs to.
Go to ImplementationJump from a base type or member to any of its end implementations, bypassing intermediate steps in the inheritance chain.
To-Do ExplorerReSharper can show and group all to-do items in your code base, helping you navigate directly to each of them.
Navigate to Derived SymbolsJump to a type to any of its inheritors, or from a type member to any members overriding or implementing it in derived types.
Find UsagesReSharper's advanced Find Usages feature seeks for symbol occurrences in code, comments, and related symbols. Results are presented in a feature-rich tool window with grouping options, filtering by type of usage, and code preview.
Go to File MemberJump to a specific member in the current file or its related files (for example, in another type part.)
Highlight UsagesHighlight usages of symbol in the current file. Read and write usages are highlighted in different colors, and you can quickly navigate between usages.
Go to Recent FilesIf you're about to get back to a file that you've recently closed, Recent Files is the shortcut that's going to get you back quickly.
Change SignatureThis refactoring modifies the set of parameters or return type of a method, making sure that all calls, implementations and overrides are updated accordingly.
Move Types into Matching FilesThis refactoring analyzes all types found in a given scope and makes sure that all of them are placed in dedicated files matching their names. It can be applied to a file, folder, project, solution, or a custom selection of files.
Rename on SteroidsReSharper's implementation of Rename refactoring works across all supported languages, takes into account usages in comments and string literals.
Invoking Extract ClassThis new refactoring helps break up a complex class into several simple classes, thus respecting the principle of single responsibility and reducing code complexity.
Setting up Extract ClassExtract Class wizard helps pick members to extract to a separate class, warns of any found dependencies and conflicts.
Adjust NamespacesThis refactoring helps you synchronize namespaces to folder structure in any scope, which can be as large as the entire solution. If in a certain code file a namespace doesn't correspond to the location of the file in project structure, the namespace is renamed to comply with file location.
Extract Class from ParametersThis refactoring helps streamline your APIs: it creates a new class or struct and converts selected parameters of a method into encapsulated fields of the newly created type. Usages of parameters are converted to usages of properties of the created type.
Generate Equality MembersGenerate Equality Members wizard offers different ways of generating a working implementation of a type equality check.
Generate Content for PlaceholdersIn ASP.NET, if there are content placeholders in your master page, ReSharper helps you generate corresponding content tags in markup pages referencing that master page.
Creating Declarations from UsageIf ReSharper encounters a code symbol that it's unable to resolve, it suggests a set of context-driven options to generate its declaration.
Generate FilesIf the Generate menu is invoked from Solution Explorer, ReSharper offers a pack of options to generate new files: web forms, controls or master pages in web projects; classes, interfaces, structs and enumerations in all projects.
Surround TemplatesIf you've selected a piece of code in the code editor, ReSharper helps you surround the selection with braces, condition clauses or other relevant code defined as surround templates. Surround templates are fully customizable to adopt to your specific needs.
Live TemplatesLive templates are ReSharper's more intelligent version of Visual Studio's code snippets. ReSharper can predict from the context which variables, fields, and types can be used in corresponding templates.
Creating Custom Live TemplatesLive templates are perfectly customizable. If you're not happy with the predefined set of live templates that comes bundled with ReSharper, you can create your own templates or modify the default ones.
Code Cleanup WindowCode Cleanup brings together code formatting and rearranging, migration to newer code constructs, optimizing import directives and more routine cleanup operations.
Configuring Code CleanupYou can configure code cleanup profiles to reach different goals depending on your team coding standards, project specifics, and technology that is being used.
Configuring Language Usage OptionsHas your team come to agreement on whether to use implicit type qualifiers? Set up a team-wide code cleanup preference accordingly and let ReSharper take care of enforcing it.
Cleaning up a Solution FolderCode Cleanup can be invoked in any scope, be it a code block, file, folder, project, solution, or a custom scope.
Removing Unused ReferencesReSharper analyzes references in all projects and suggests which of them can be safely removed.
Analyzing ReferencesBefore removing unused references, you can review all references in a project and see how they are used (or not used.)
Find Usages of Resource EntriesReSharper helps you search for occurrences of a resource entry in all file types and contexts. As soon as you have search results at hand, group them and preview as you see fit.
IntelliSense for Resource NamesReSharper shows completion lists suggesting resource names. Completion supports lowerCamelCase, letting you use abbreviations instead of full words.
Quick Info for Resource EntriesReSharper's Quick Documentation feature works for resource names, giving you an overview of resource values in all cultures defined in your solution.
Inheritance Information for ResourcesSpecial gutter marks in the code editor give you a quick glance of cultures in which the current resource value is overridden.
Navigation to Members in Resource FilesReSharper's Go to File Member is available in .resx files, letting you jump to a specific resource entry in no time.
Navigate to Resource ImplementationsReSharper's context-sensitive navigation takes you from a resource declaration or usage to any of its overriding resource names in other cultures.
Refactoring Resource EntriesReSharper provides several refactorings for resource entries. For example, it helps you quickly move a resource entry to a different resource file and auto-update its usages along the way.