ReSharper is the must-have productivity tool for Microsoft Visual Studio. It comes equipped with a rich set of features that greatly increase the productivity of .NET developers working with C#, VB.NET, ASP.NET, XML, XAML, and build scripts. ReSharper analyzes errors and warnings in C# code across your whole solution and highlights them in the editor while you type. For most errors it offers to solve the problem instantly, with quick-fixes. ReSharper offers a number of shortcuts for streamlining common coding tasks. For example, ReSharper extends and improves native Visual Studio IntelliSense with three types of intelligent Code Completion, suggests to insert a missing using directive right after you've entered a type name.
ReSharper provides 35 automated solution-wide code refactorings for C# 3.0 and VB.NET. You can rename, move, and safely delete symbols; introduce and inline fields, variables, and parameters; convert properties to auto-properties and methods or static to extension methods, among other actions. In addition, all kinds of simpler code transformations are made possible with context actions. Whenever you need to find a certain type, field, method, or any other symbol, ReSharper provides you with a variety of ways to do it. You can find a symbol by name, navigate to a symbol declaration from its reference in the code, or find and highlight symbol usages. You can navigate to declarations, inheritors, base types, usages, and more - across languages. In addition, ReSharper enables you to thoroughly review type hierarchies and file structures, with its dedicated tool windows. Code Cleanup is a shortcut for a dozen of ReSharper features, letting you reformat your code according to a customizable style, remove code redundancies, optimize using directives, shorten qualified references, and revamp your code in other ways. ReSharper automatically detects NUnit and MSTest unit tests in your code and enables you to run and debug tests right from the code editor. A dedicated Unit Test Explorer window lets you see the structure of your unit tests and run them in any combination using one or more unit test sessions.