ReSharper
 
Get ReSharper
Get your hands on the new features ahead of the release by joining the Early Access Program for ReSharper 2025.1! Learn more

Code Syntax Style: Implicit/Explicit Typing ('var' Keyword)

Last modified: 26 May 2024

Using implicitly typed local variables (also known as var keyword) introduced in C# 3.0 has become quite popular as it improves readability in many scenarios. By default, ReSharper also encourages using of var keyword, but preferences of its usage are flexibly configurable — for example, you can opt for using explicit types in specific cases or everywhere and ReSharper will help you enforce your preferences.

Starting from C# 7.0, you can declare local variables when deconstructing tuples. If you prefer var in such declarations, you can additionally configure a style to use joined or separated notation, that is, for example: var (x, y) = GetTuple(); or (var x, var y) = GetTuple();.

Another C# 7.0 feature is discards, which also allows using var to make sure that there are no conflicts with variables in the scope that may be named _. ReSharper allows you to configure a style to always use var with discards where appropriate.