Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
| Недвижимость / Собственность (if context dictates the need for a more specific translation) | Ценность |
|---|---|
| идентификатор правила | IDE0130 |
| Заголовок | Пространство имен не соответствует структуре каталогов |
| категории | Стиль |
| Подкатегория | Языковые правила (предпочтения уровня выражений) |
| применимые языки | C# и Visual Basic |
| параметров | dotnet_style_namespace_match_folder |
Обзор
Это правило стиля использует структуру папок проекта для применения требований к именованию пространства имен.
Параметры
Параметры указывают поведение, которое вы хотите, чтобы правило соблюдало. Сведения о настройке параметров см. в формате параметра .
dotnet_style_namespace_match_folder
| Недвижимость | Ценность | Описание |
|---|---|---|
| название параметра | dotnet_style_namespace_match_folder | |
| значения опции | true |
Предпочитайте, чтобы имена пространств имен соответствовали структуре папок. |
false |
Отключает правило. | |
| значение параметра по умолчанию | true |
Заметка
Параметр dotnet_style_namespace_match_folder зависит от знания текущих свойств проекта и корневого пространства имен. Эти сведения предоставляются Visual Studio, но недоступны для сборок командной строки, например dotnet build. Чтобы сборки командной строки работали, необходимо добавить в файл проекта следующие свойства:
<ItemGroup>
<CompilerVisibleProperty Include="RootNamespace" />
<CompilerVisibleProperty Include="ProjectDir" />
</ItemGroup>
Пример
Предположим, что следующие фрагменты кода относятся к файлу с именем Data/Example.cs или Data/Example.vb, где Data представляет структуру папок из файла проекта. Наименование структуры папок добавляется в корневое пространство имен, которое в этом примере является Root.
// Code with violations
namespace Root.BadExample
{
class Example
{
public void M()
{
}
}
}
// Fixed code
namespace Root.Data
{
class Example
{
public void M()
{
}
}
}
' Code with violations
Namespace Root.BadExample
Class Example
Public Sub M()
End Sub
End Class
End Namespace
' Fixed code
Namespace Root.Data
Class Example
Public Sub M()
End Sub
End Class
End Namespace
Подавление предупреждения
Если вы хотите отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable IDE0130
// The code that's violating the rule is on this line.
#pragma warning restore IDE0130
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none в файле конфигурации .
[*.{cs,vb}]
dotnet_diagnostic.IDE0130.severity = none
Чтобы отключить все правила стиля кода, задайте уровень серьезности для категории Style, чтобы none в файле конфигурации .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Дополнительные сведения см. в статье Подавление предупреждений анализа кода.
См. также
- Языковые правила
- справочник по правилам стиля кода