11 подписчиков
Directory.Packages.props — секретное оружие в ..net8 для управления зависимостями!
💡 Что такое Directory.Packages.props?
Это файл для централизованного управления версиями NuGet-пакетов в решении. Вместо указания версий в каждом проекте, вы задаёте их один раз в Directory.Packages.props. Особенно полезно для больших решений.
🔧 Как это работает?
Создайте файл
Разместите Directory.Packages.props в корне решения.
Добавьте зависимости
Укажите пакеты и их версии:
<Project>
<PropertyGroup>
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
</PropertyGroup>
<ItemGroup>
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
<PackageVersion Include="Serilog" Version="2.12.0" />
</ItemGroup>
</Project>
Используйте в проектах
Просто укажите пакет без версии:
<PackageReference Include="Newtonsoft.Json" />
🌟 Преимущества
Централизация: Все версии в одном месте.
Чистота кода: .csproj становится компактнее.
Меньше ошибок: Избегайте конфликтов версий.
Удобство обновления: Меняйте версии один раз.
🛠️ Пример
Без Directory.Packages.props:
<!-- WebApp.csproj -->
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
С Directory.Packages.props:
<!-- Directory.Packages.props -->
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
<!-- WebApp.csproj -->
<PackageReference Include="Newtonsoft.Json" />
🎉 Заключение
Directory.Packages.props упрощает управление зависимостями, делая процесс чище и эффективнее. Попробуйте его в своём проекте — и вы оцените удобство!
А вы уже используете этот подход? Делитесь опытом в комментариях! 👇
P.S. Лайк и подписка помогут не пропустить новые материалы о .NET! 🚀
1 минута
18 марта