Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
| Property | Value |
|---|---|
| Идентификатор правила | IDE0043 |
| Заголовок | Недопустимая строка формата |
| Категория | Style |
| Подкатегории | Языковые правила (строковые операции) |
| Применимые языки | C# и Visual Basic |
| Параметры | Нет |
Обзор
Это правило помечает вызовы методов составного форматирования, таких как String.Format, в которых индекс плейсхолдера в строке форматирования ссылается на отсутствующий аргумент. Например, если строка формата содержит {1}, но передан только один аргумент (доступный как {0}), правило помечает заполнитель {1}.
Замечание
Это правило аналогично правилу качества кода CA2241, которое также проверяет аргументы строки форматирования.
Example
// Code with violations.
// '{1}' is out of range — only one argument is provided.
string s = string.Format("Hello, {0}! You have {1} messages.", "Alice");
// Fixed code.
string s = string.Format("Hello, {0}! You have {1} messages.", "Alice", 5);
' Code with violations.
' '{1}' is out of range — only one argument is provided.
Dim s As String = String.Format("Hello, {0}! You have {1} messages.", "Alice")
' Fixed code.
Dim s As String = String.Format("Hello, {0}! You have {1} messages.", "Alice", 5)
Отключение предупреждений
Если вы хотите отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable IDE0043
// The code that's violating the rule is on this line.
#pragma warning restore IDE0043
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none в файле конфигурации.
[*.{cs,vb}]
dotnet_diagnostic.IDE0043.severity = none
Чтобы отключить все правила стиля кода, задайте уровень серьезности для категории Stylenone в файле конфигурации.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Дополнительные сведения см. в разделе "Подавление предупреждений анализа кода".