ReSharper 2017.2 vs ReSharper 2016.3

This page will help you compare ReSharper 2017.2 with its predecessor. The latest version of ReSharper includes initial support for .NET Core 2.0 and C# 7.1 enhances C# 7.0 support, provides more code inspections, context actions, and quick-fixes, delivers considerable improvements in navigation and search, brings new C# typing assists, and levels up support for TypeScript, JavaScript, JSON and Angular. For details, please see What's New in ReSharper.

2016.3
2017.2

Supported versions of Visual Studio

Visual Studio 2010 Visual Studio 2010
Visual Studio 2012 Visual Studio 2012
Visual Studio 2013 Visual Studio 2013
Visual Studio 2015 (Updates 1–3) Visual Studio 2015 (Updates 1–3)
Visual Studio 2017 RC Visual Studio 2017 15.3.

Code analysis

~2400 code inspections ~2500 code inspections
~1200 quick-fixes 1200+ quick-fixes
Possible multiple enumeration of IEnumerable Possible multiple enumeration of IEnumerable can consider types derived from IOrderedEnumerable and ParallelQuery, and detects possibly unintended transformation from IQueryable to IEnumerable
Inspection and quick-fix for implicit types in out variable Inspection and quick-fix are available for implicit types in out variable
The Convert to switch quick-fix The Convert to switch quick-fix transforms multiple if statements into a single switch statement with patterns
Language injections (Regular expressions, JavaScript, HTML, CSS, JSON) XML is supported in language injections

ReSharper Build

ReSharper Build ReSharper Build supports .NET Core projects

Navigation and search

Navigate to File Nearby Navigate to File Nearby
Go to... actions (Go to Everything/Type, Go to File, etc.) Go to... actions can handle incorrect word order in CamelCased identifiers and misspellings in the target query, support exact match queries inside quotation marks, and allow searching for extension methods using the dot separator
Go to Text Go to Text is also integrated in Go to Everything

Code style

Code formatter: Visual Studio settings for tabs and indents Tabs and indents settings in all supported languages can be now configured and stored in ReSharper's layered settings
Auto-detecting indents when reformatting code Auto-detecting indents when reformatting code
Extensive set of code formatting rules New code formatting rules including comma-first style, line breaks in a single case statement in C#, and the option to add line feed at the end of the HTML, CSS, or XML files
<inheritdoc/> support in Quick Documentation and tooltips Context actions and quick-fixes supporting <inheritdoc/>
Code style for bodies of simple function members Code style for bodies of simple function members

Code generation

Generate constructor Generate constructor allows to make constructor parameters optional
Generate missing members Generate missing members adds an option to make parameters mutable when auto-implementing interface members
Generation of configurable null checks for exceptions and assertions Generation of configurable null checks for exceptions and assertions

Coding assistance

C# typing assistants New C# typing assistants allow you to quickly mark arguments with NotNull/CanBeNull attributes and convert expression-bodied to block-bodied members
420+ context actions 430+ context actions
Initialize auto-property from parameter context action Initialize auto-property from parameter context action is aligned with the Introduce auto-property from parameter quick-fix, providing the same extensive set of options
Generate type patterns Generate type patterns helps easily generate switch cases for selected types
Smart indent on Enter Smart indent on Enter, which takes into account ReSharper's tab/indent and alignment settings
Switch postfix template Switch postfix template is now available on variables of non-sealed reference types

Unit testing

xUnit and NUnit tests in ASP.NET Core and .NET Core 1.0.x projects in Visual Studio 2015 xUnit and NUnit tests in ASP.NET Core (both 1.1 and 2.0) and MSTest and xUnit.net in .NET Core 2.0 projects in Visual Studio 2017 15.3

Supported languages and technologies

C#: early support for version 7.0, including binary literals, digit separators, local functions, out variables, pattern-matching in is-expressions and switch cases C#: initial support for version 7.1, including default literals, tuple projection initializers, async main, and pattern matching with generics; improved C# 7.0 support
VB.NET: up to version 15 VB.NET: up to version 15
ASP.NET (Web Forms, MVC) ASP.NET (Web Forms, MVC)
ASP.NET Core 1.0.x ASP.NET Core 2.0
XAML XAML
JavaScript JavaScript
Node.js Node.js
JSON: dynamic completion of package names in project configuration files (project.json, package.json and bower.json) JSON: code completion, tooltips, and Quick Documentation in project configuration files (project.json, package.json, and bower.json)
TypeScript: up to version 2.0.2 TypeScript: up to version 2.3
Angular Angular: support of Angular 4 syntax, support for input/output aliases and attribute directives, support for Angular2 components added via NPM
XML XML
HTML HTML
CSS CSS
Build scripts Build scripts
Google Protocol Buffers Google Protocol Buffers

Miscellaneous

Interactive tutorials Interactive tutorials that help you become familiar with the most useful features in daily work or get up to speed with features in new
Download
Free 30-day trial