Я пытаюсь создать шаблон проекта для CLI dotnet, и мне нужно изменить формат имени проекта для некоторых замен.В частности, соглашение в нашем домене использует вербальную версию имени проекта в качестве идентификатора, который необходимо сохранить в файле конфигурации.
Обычно шаблоны выполняют довольно простой поиск / замену имени проекта шаблона на имя проекта, который вы создаете с помощью dotnet new.Этот поиск чувствителен к регистру, поэтому он будет подбирать только экземпляры имени с точно таким же регистром.
Однако в моем случае мне нужно, чтобы оно совпадало с версией верблюжьего имени и заменяло его верблюжьей версией нового имени.Возможно ли это?
Эта ссылка содержит довольно мало информации, а this показывает, что существует генератор параметров, который поддерживает преобразования в верхний и нижний регистры, но конкретноговорит, что не поддерживает верблюжийВсе, что мне действительно нужно, это возможность изменить первый символ с верхнего на нижний регистр.
Любая идея, как я могу вставить вербальную версию названия проекта?
Вотмой экспериментальный template.json для верхнего и нижнего регистра и параметр командной строки, но, очевидно, ничего для верблюжьего корпуса.
{
"$schema": "http://json.schemastore.org/template",
"identity": "TemplateTest.CSharp",
"groupIdentity": "TemplateTest.Console",
"author": "TemplateTest",
"classifications": [ "Common", "Console" ],
"name": "TemplateTest console template",
"shortName": "test",
"preferNameDirectory": true,
"tags": {
"language": "C#"
},
"sourceName": "TemplateTest",
"symbols": {
"apiname": {
"type": "parameter",
"datatype": "text",
"defaultValue": "##FIX THIS##",
"replaces": "templateTest"
},
"nameUpper": {
"type": "generated",
"generator": "casing",
"parameters": {
"source": "name",
"toLower": false
},
"replaces": "TEMPLATETEST"
},
"nameLower": {
"type": "generated",
"generator": "casing",
"parameters": {
"source": "name",
"toLower": true
},
"replaces": "templatetest"
}
}
}