安装两个Nuget包Hl7.Fhir.DSTU2和Hl7.Fhir.R4时,我们会得到类似于以下内容的东西: 包DSTU2似乎在使用Hl7.Fhir.Support.Poco版本3.4.0时出现了问题。 如果我们单独安装DSTU2,则所有包都使用版本1.9.0。在.csproj文件中是否有一种指定子依赖项版本并将.dll安装在特定文件夹中的方法?这是我调试文件夹中的3.4.0版本.dll。
是的,你只需要在项目中添加一个PackageReference来处理传递依赖关系。NuGet为每个所依赖的包选择一个版本,如果你直接引用了某个包,那么由于其就近优先原则,NuGet将始终选择该版本。不过,正如你已经注意到的那样,这个版本不能低于任何依赖项本身所需的版本,否则会出现软件包降级错误。这是有意为之的 - 如果你引用了需要至少特定版本的packageB的packageA,那么考虑到你只能使用每个包的一个版本,你至少需要那个版本的packageB。