Как вы можете поделиться информацией о сборке между проектами в формате VS 2019? - PullRequest
0 голосов
/ 09 июня 2019

В VS 2017 или, точнее, в старом формате проекта, используемом в VS 2017, у каждого проекта была папка «Свойства» с файлом AssemblyInfo.cs, в котором содержались такие вещи, как версия проекта, авторские права и т. Д.

Если вы хотите поделиться этой информацией между несколькими проектами, скажем, всеми в конкретном решении, вы создали файл AssemblyInfo_Shared.cs, переместили в него общие свойства, удалив их из исходного файла AssemblyInfo.cs, тогда вы бы«связать» совместно используемую версию с каждым отдельным проектом.

Теперь при сборке информация, содержащаяся в AssemblyInfo_Shared.cs, будет передана всем проектам, в то время как значения, специфичные для проекта, останутся в исходном файле AssemblyInfo.cs..

Однако в новом формате проекта все эти значения встроены в файл проекта, который теперь представляет собой простой файл XML.Как вы можете поделиться настройками между проектами сейчас?

1 Ответ

0 голосов
/ 09 июня 2019

Свойства (и даже элементы) в файле проекта обрабатываются MSBuild и могут быть легко преобразованы в .props и .targets файлы, которые используются в ваших проектах.

С новым файлом проектаMSBuild автоматически импортирует файлы с именами Directory.Build.props в начале вашего проекта и Directory.Build.targets в конце - это включает поиск по дереву папок, пока один из них не будет найден.Благодаря этому очень легко обмениваться свойствами для всех проектов в вашем решении: просто создайте файл Directory.Build.props в папке решения со своими свойствами версии, и каждый проект будет иметь эти свойства.

...