.net core Nuget PackageReference的资产

.net core Nuget PackageReference的资产,.net-core,visual-studio-2017,nuget-package,csproj,.net Core,Visual Studio 2017,Nuget Package,Csproj,我在一个项目中有以下软件包: <PackageReference Include="Microsoft.CodeAnalysis" Version="2.8.2" /> <PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="1.1.0" /> <PackageReference Include="Microsoft.CodeAnalysis.Common" Version="2.8

我在一个项目中有以下软件包:

<PackageReference Include="Microsoft.CodeAnalysis" Version="2.8.2" />
<PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="1.1.0" />
<PackageReference Include="Microsoft.CodeAnalysis.Common" Version="2.8.2" />
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="2.8.2" />
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="2.8.2" />
<PackageReference Include="Microsoft.CodeAnalysis.VisualBasic" Version="2.8.2" />
<PackageReference Include="Microsoft.CodeAnalysis.VisualBasic.Workspaces" Version="2.8.2" />
<PackageReference Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="2.8.2" />

但我认为这不是最好的、精确的选择。

这里最好的做法是创建一个全新的空白项目。参考2.8.2版本,然后将csproj文件中的内容与实际解决方案进行比较。删除真实解决方案中不在虚拟文件中的所有引用。很可能名称空间已经发生了变化,但至少在您获得正确的引用之后,名称空间就不会那么困难了。

但我的问题是,如果我知道我需要哪一个引用,我应该定义哪些资产?看看包中的包,我觉得在以后的版本中,第二行,其中version=1.1.0不再存在,或者其名称空间已更改为现有名称空间之一。排除通常发生在您排除但不从解决方案中删除时,因此您可能会忽略这些排除。如果你听从我的回答,事情就会变得更清楚。您提到的3种资产类型将由父包引用创建。你不需要碰这些。请进一步澄清
<PackageReference Include="Microsoft.CodeAnalysis" Version="2.8.2">
  <PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="1.1.0">
  <PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.Common" Version="2.8.2">
  <PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="2.8.2">
  <PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="2.8.2">
  <PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.VisualBasic" Version="2.8.2">
  <PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.VisualBasic.Workspaces" Version="2.8.2">
  <PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="2.8.2">
  <PrivateAssets>all</PrivateAssets>
</PackageReference>