У меня есть многопроектное решение, написанное на С#. Я создал файл sharedassemblyinfo.cs, чтобы поделиться номером версии и т. д. между различными проектами в моем решении. Мне нужно собрать этот проект как пакет nuget. В моем файле nuspec есть заполнители, такие как $version$, которые извлекают версию сборки из файла Assemblyinfo.cs. Поскольку вместо этого я использую файл sharedassemblyinfo.cs для хранения версии сборки, могу ли я изменить свой файл nuspec, чтобы получить версию из sharedassemblyinfo.cs вместо Assemblyinfo.cs?
Метаданные Nuspec и файл sharedassemblyinfo.cs
Ответы (1)
Есть ли способ изменить файл nuspec, чтобы получить версию из sharedassemblyinfo.cs вместо Assemblyinfo.cs?
Нет, AFAIK, это разработано nuget для использования атрибута AssemblyVersionAttribute в Assemblyinfo.cs, когда используется токен $version$. Если вы хотите изменить его для использования sharedassemblyinfo.cs, вам нужно отредактировать исходный код nuget, чтобы загрузить файл sharedassemblyinfo.cs. После изучения исходного кода NuGet я обнаружил, что это не так просто, как можно было бы подумать. Но вы можете обсудить этот вопрос на GitHub.
Кроме того, вы можете вручную изменить номер версии в файле nuspec. если вы замените токен $version$ значением, то это значение будет иметь приоритет и будет использоваться в имени файла пакета. Вы также можете установить версию в командной строке, которая имеет приоритет над всем вышеперечисленным.