Поделиться через


Предпочтения var (IDE0007 и IDE0008)

В этой статье описаны два связанных правила, IDE0007 и IDE0008.

Свойство Ценность
идентификатор правила IDE0007
Заголовок Используйте var вместо явного типа
категория Стиль
Подкатегория Языковые правила ('var' предпочтения)
применимые языки C#
Опции csharp_style_var_for_built_in_types
csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere
Свойство Ценность
идентификатор правила IDE0008
Заголовок Используйте явный тип вместо var
Категория Стиль
подкатегория Языковые правила ('var' предпочтения)
применимые языки C#
Параметры csharp_style_var_for_built_in_types
csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere

Обзор

Эти два правила стиля определяют, следует ли использовать ключевое слово var или явный тип в объявлении переменной. Чтобы обеспечить использование var, установите уровень серьезности IDE0007 на предупреждение или ошибку. Чтобы обеспечить использование явного типа, установите уровень серьезности IDE0008 как предупреждение или ошибку.

Варианты

Связанные с этим правилом параметры определяют, где следует применять этот стиль:

Дополнительные сведения о настройке параметров см. в формате параметров .

csharp_style_var_for_built_in_types

Свойство Ценность Описание
название опции csharp_style_var_for_built_in_types
значения опций true Следует использовать var для объявления переменных встроенных системных типов, таких как int.
false Предпочитайте использовать явный тип вместо var для объявления переменных с встроенными системными типами, такими как int.
значение параметра по умолчанию false
// csharp_style_var_for_built_in_types = true
var x = 5;

// csharp_style_var_for_built_in_types = false
int x = 5;

csharp_style_var_when_type_is_apparent

Свойство Ценность Описание
Имя параметра csharp_style_var_when_type_is_apparent
значения опций true Предпочитайте var, если тип уже упоминается в правой части выражения объявления.
false Предпочитать явный тип, если тип уже упоминается в правой части выражения объявления.
значение параметра по умолчанию false
// csharp_style_var_when_type_is_apparent = true
var obj = new Customer();

// csharp_style_var_when_type_is_apparent = false
Customer obj = new Customer();

csharp_style_var_elsewhere

Свойство Ценность Описание
имя параметра csharp_style_var_elsewhere
значения опций true Предпочитать var явному типу во всех случаях, если оно не заменяется другим правилом стиля кода.
false Предпочитать использовать явный тип вместо var во всех случаях, за исключением случаев, когда это переопределено другим правилом стиля кода.
значение параметра по умолчанию false
// csharp_style_var_elsewhere = true
var f = this.Init();

// csharp_style_var_elsewhere = false
bool f = this.Init();

Подавление предупреждения

Если вы хотите отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.

#pragma warning disable IDE0007 // Or IDE0008
// The code that's violating the rule is on this line.
#pragma warning restore IDE0007 // Or IDE0008

Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none в файле конфигурации .

[*.{cs,vb}]
dotnet_diagnostic.IDE0007.severity = none
dotnet_diagnostic.IDE0008.severity = none

Чтобы отключить все правила стиля кода, задайте уровень серьезности для категории Style, чтобы none в файле конфигурации .

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

Дополнительные сведения см. в статье Подавление предупреждений анализа кода.

См. также