Support for C# 6.0
Starting from version 9.0 ReSharper provides support for new language constructs introduced with C# 6.0. Those include static usings, exception filters, string interpolation, nameof()
operator and others. We are also introducing a set of new quick-fixes to replace curly brace delimited constructs with expression bodies, to update your null checking code using the new ?.
operator, to transform to regular/verbatim interpolation or to update parameter references using nameof()
operator.
Please see this post for more details on C# 6.0 support.
Find type on NuGet
When you have a type or namespace used inside your project that can't be resolved to referenced libraries or packages, ReSharper can search for this type or namespace in the NuGet package gallery, display the list of matching packages and easily download and install the package that you choose.
Enhanced JavaScript and TypeScript support
ReSharper 9 provides tons of enhancements for JavaScript and TypeScript development that include a set of new quick-fixes to cover over 300 different types of errors, new live templates for common TypeScript entities, and new code generation options to make it easier to implement interfaces or generate missing or overriding members.
There's also a set of new refactorings for JavaScript and TypeScript. These include Introduce Field, Copy Type, move refactorings (Move Type To Module/File, Move Into Matching Files and Move To Folder), Rename File as well as the Import of Types for Pasted Code.
ReSharper 9 supports EcmaScript 6, TypeScript 1.4 and TypeScript 1.5. It is even aware of some TypeScript 1.6 features such as local types, abstract classes, type predicates, async
functions and methods, as well as the await
operator.
ReSharper 9.1 adds support for JSDoc including syntax highlighting, quick documentation (Ctrl+Q) and code completion. As a further improvement, ReSharper 9.2 adds support for regular expressions in TypeScript and JavaScript, similar to how it does in C# code.
Fix in Scope evolution
ReSharper 9 expands the Fix in Scope feature with an ability to remove redundant qualifiers, fix naming or remove regions in the scope of a project or the whole solution.
In addition, ReSharper is now able to look through the code in your solution and generate the appropriate imports for all unresolved types.
This feature can import extension methods as well. The only case when ReSharper can't import a type is when it resolves to two different namespaces (e.g., System.String
and User.String
).
Navigation improvements
A new Go To Action feature searches for a particular action using the legendary Alt+Enter shortcut. Navigate to Exposing APIs command finds all methods that are capable of returning a particular type.
Find Usages gets a configurable setting for the
Preview
tab, and it no longer blocks the UI on long-running searches. You can also filter or ignore particular issues in the Find Results window that was updated not to produce extra tabs for the same type.
The Go to Usages pop-up is reworked as well: it now shows the context of discovered usages, as well as a progress bar, which can be very handy when looking at heavily used symbols.
Visual Studio 2015 support
ReSharper 9.2 integrates with Visual Studio 2015 RTM while preserving compatibility with 3 previous releases of the Microsoft IDE, namely 2013, 2012 and 2010.
When integrated into Visual Studio 2015, ReSharper merges Visual Studio's own quick actions into its
Alt+Enter menu, so when you want to make changes to your code, you can choose either ReSharper or Visual Studio to do it for you, from the same list of actions.
Windows 10 applications
Starting with version 9.2, ReSharper supports Universal Windows Platform (UWP) application development using Windows 10 Developer Tools. In addition to understanding the structure of UWP projects, ReSharper provides code completion for API checks and supports new Windows 10 specific XAML constructs.
Run configurations
A run configuration lets you run, profile or debug a project, a static method or any executable file. For static methods, a run configuration can be quickly created right in the editor:
You can create multiple run configurations depending on your needs and preferences. To run or debug the active configuration, press
Ctrl+F5 or F5. By default, the solution will be rebuilt, but you can also execute the active configuration without rebuilding. If you have dotTrace installed and integrated in Visual Studio, you can launch profiling from the same pop-up menu.
Regular expressions
ReSharper 9 provides you with code completion for wildcards and regular expression groups, highlights errors, and offers a quick-fix to adjust wildcard backslashes to C# style. It comes with a separate Validation Utility for regular expressions that lets you quickly check input against a regular expression and get an immediate view of the matches and groups.
Starting with version 9.2, ReSharper extends its regular expression support to JavaScript and TypeScript.
Type dependency diagram
Adding to the Project Dependency Graph, ReSharper 9 expands its set of Architecture Tools with a Type Dependency Graph. This diagram can be most helpful for finding out what code depends on a particular type, and what the type itself depends on.
Code style settings
With the new File Layout Editor you can easily customize your coding style settings in a single place without having to look through lots of different options. This works for C#, VB.NET, HTML, JavaScript and TypeScript.