Насколько я могу собрать, невозможно сгруппировать по префиксам. Вы можете группировать только по расширениям или суффиксам, или по полному имени файла.
Это означает, что вы не можете определить правило для этого. Однако есть 2 варианта:
- Определить правило для каждого файла
- Измените схему именования
Определение правила для каждого файла
Чтобы определить правило для каждого файла, вы должны использовать провайдера fileToFile
.
Это будет выглядеть так:
{
"help": "https://go.microsoft.com/fwlink/?linkid=866610",
"root": true,
"dependentFileProviders": {
"add": {
"fileToFile": {
"add": {
"IInvestigationRepository.cs": [ // Parent file
"InvestigationRepository.cs" // Nested file
],
"IReporterRepository.cs": [ // Parent file
"ReporterRepository.cs" // Nested file
]
...
}
}
}
}
}
Использование другой схемы именования
В качестве альтернативы, если вам не нравится первый вариант, вы можете использовать другую схему именования для ваших файлов и позволить классам сохранять свои старые имена.
Тогда вы можете использовать провайдера fileSuffixToExtension
, например:
{
"help": "https://go.microsoft.com/fwlink/?linkid=866610",
"root": true,
"dependentFileProviders": {
"add": {
"pathSegment": {
"add": {
".DefaultImplementation.cs": [
".cs"
]
}
}
}
}
}
Это будет карта
IInvestigationRepository.DefaultImplementation.cs
до IInvestigationRepository.cs
,
IReporterRepository.DefaultImplementation.cs
до IReporterRepository.cs
и т. Д.
Это также сделает цель ваших файлов более понятной, поскольку одноименное имя не скажет вам, что он делает с Интерфейсом, просто это как-то связано с ним.
Если вы не хотите использовать нотацию с .
и предпочитаете использовать -
, вы можете сделать это, заменив "pathSegment"
на "fileSuffixToExtension"
и заменив ".DefaultImplementation.cs"
на "-DefaultImplementation.cs"