我有30个项目的解决方案,我想发布为30个NuGet包。
将项目依赖项转换为包依赖项的最简单方法是什么?
答案 0 :(得分:2)
完全可以为所有nuspec
创建csprojs
文件,而不是修改项目以依赖于nugets。 Nuget将检测项目引用的nuspec
文件,如果您在nuspec
中有包依赖项,则不会为它们捆绑dll。
例如我在我的project:
中这样做了nuspec
<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>QDARC.Queries.Linq</id>
<version>1.0.3-alpha</version>
<authors>Rafał Furman</authors>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>TSQL extension for AST model for SQL queries.</description>
<dependencies>
<dependency id="QDARC.Utilities" version="1.0.6" />
<dependency id="QDARC.Queries.Model" version="1.0.3-alpha" />
<dependency id="QDARC.Sql.Connector" version="1.0.3-alpha" />
</dependencies>
</metadata>
<files>
<file src="bin\Release\netstandard2.0\Qdarc.Queries.Linq.dll" target="lib\netstandard2.0" />
</files>
</package>
和csproj片段
<ItemGroup>
<ProjectReference Include="..\Qdarc.Sql.Connector\Qdarc.Sql.Connector.csproj" />
<ProjectReference Include="..\Qdarc.Queries.Formatter\Qdarc.Queries.Formatter.csproj" />
<ProjectReference Include="..\Qdarc.Queries.Model\Qdarc.Queries.Model.csproj" />
</ItemGroup>
您可以检查nuget package,它只包含单个dll。