C# nuget中的DLL引用版本=0.0.0.0

C# nuget中的DLL引用版本=0.0.0.0,c#,nuget,C#,Nuget,我有以下情况: 有一个LibF库,我将其构建为一个nuget包,它包含net48和NetCore3.1的DLL。我是直接从csproj包装的人员,使用: <PropertyGroup> <GeneratePackageOnBuild>true</GeneratePackageOnBuild> </PropertyGroup> <PropertyGroup> <GeneratePackageOnBuild>t

我有以下情况:

有一个LibF库,我将其构建为一个nuget包,它包含net48和NetCore3.1的DLL。我是直接从csproj包装的人员,使用:

<PropertyGroup>
    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>
<PropertyGroup>
    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
</PropertyGroup>
显然,我没有版本0.0.0.0。现在,当我查看nuget包(解压)时,我在LibD.nuspec中看到以下条目:

<dependency id="LibF" version="4.2.0-alpha.55" exclude="Build,Analyzers" />
所以我的问题是:为什么有Version=0.0.0.0作为dll的参考?为什么它不想要4.2.0.0,因为这是我拥有的版本,也是我希望dll引用的版本


什么会导致这样的问题?

csproj的PropertyGroup中缺少以下内容:

<UpdateAssemblyInfo>true</UpdateAssemblyInfo>
true

之后,程序集的版本是正确的。

csproj的PropertyGroup中缺少以下内容:

<UpdateAssemblyInfo>true</UpdateAssemblyInfo>
true

程序集的后续版本是正确的。

这听起来像是库中的打包问题。你联系过图书馆的作者吗?这是你自己的图书馆吗?如果是这样的话:你到底是如何包装的?我编辑来回答你的问题。我自己直接从csproj用Visual Studio打包,而不是用单独的nusepc。这听起来像是库中的打包问题。你联系过图书馆的作者吗?这是你自己的图书馆吗?如果是这样的话:你到底是如何包装的?我编辑来回答你的问题。我直接从csproj用Visual Studio将其打包,而不是单独的nusepc。
LibF, Version=0.0.0.0, Culture=neutral, PublicKeyToken=468d6536c503beba
<UpdateAssemblyInfo>true</UpdateAssemblyInfo>