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


Деконструкция объявления переменных (IDE0042)

Свойство Ценность
идентификатор правила IDE0042
заголовок Деконструкция объявления переменной
категории Стиль
подкатегория Языковые правила (предпочтения уровня выражений)
применимые языки C#
Опции csharp_style_deconstructed_variable_declaration

Обзор

Это правило стиля касается использования деконструкции в объявлениях переменных, когда это возможно.

Параметры

Параметры определяют поведение, которое должно обеспечить выполнение правила. Для получения информации о настройке параметров см. формат параметра .

csharp_style_deconstructed_variable_declaration

Свойство Ценность Описание
имя параметра csharp_style_deconstructed_variable_declaration
значения вариантов true Следует предпочитать объявление деструктурированной переменной
false Не предпочитайте деконструкцию в объявлениях переменных
значение параметра по умолчанию true
// csharp_style_deconstructed_variable_declaration = true
var (name, age) = GetPersonTuple();
Console.WriteLine($"{name} {age}");

(int x, int y) = GetPointTuple();
Console.WriteLine($"{x} {y}");

// csharp_style_deconstructed_variable_declaration = false
var person = GetPersonTuple();
Console.WriteLine($"{person.name} {person.age}");

(int x, int y) point = GetPointTuple();
Console.WriteLine($"{point.x} {point.y}");

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

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

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

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

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

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

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

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

См. также