Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# PackageReference位于控制台应用程序C中的何处#_C#_Visual Studio_Nuget - Fatal编程技术网

C# PackageReference位于控制台应用程序C中的何处#

C# PackageReference位于控制台应用程序C中的何处#,c#,visual-studio,nuget,C#,Visual Studio,Nuget,我在一个代码中遇到了这行代码,它非常令人困惑 我的一个客户发送了一个包含 <ItemGroup> <PackageReference Include="xyzrefrence" Version="1.3.0" /> 说是控制台应用。我在packages.config中创建了相同类型的应用程序 我发现了这个东西 <?xml version="1.0" encoding="utf-8"?> <packages> <package

我在一个代码中遇到了这行代码,它非常令人困惑

我的一个客户发送了一个包含

<ItemGroup>
    <PackageReference Include="xyzrefrence" Version="1.3.0" />

说是控制台应用。我在packages.config中创建了相同类型的应用程序 我发现了这个东西

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="xyz" version="1.7.7.7" targetFramework="net452" />

我的问题是,依赖文件在客户端设置(第一个设置)中的位置是引用(
引用(

PackageReference位于控制台应用程序C中的何处#

有两种nuget MaRange格式(
Packages.config
PackageReference
)可用于安装所有nuget软件包

实际上是自VS2017以来新sdk项目(
net standard
net core
)的一种新的nuget管理格式,而对于net framework项目,它是一种旧的传统nuget管理格式

然而,您应该注意对于传统框架项目,微软做出让步,使用新SDK的pacakgeReference格式,但仍然存在各种兼容性问题--------(
net framework
项目可以同时使用它们,而
net core
/
net standard
项目只能使用PackageReference

如果使用net framework项目,则可以在开始安装nuget软件包之前,通过工具-->选项-->-->常规-->软件包管理更改这两种格式

在开始安装第一个nuget软件包之前,您应该指定此格式,当您指定此格式时,以后安装的nuget将默认使用此方法,并且无法更改

我的问题是,客户的依赖文件位于哪里 设置(第一个设置)

1)如果使用带有PackageReference
net framework控制台
项目,恐怕您看不到nuget的依赖关系。由于几个兼容性问题,带有PackageReference的旧sdk项目不支持显示nuget包的依赖关系

2)如果您使用
net core console
项目,您可以在解决方案资源管理器中看到依赖项,最新的sdk项目确实支持这一点。它有一个新的行为,您可以在解决方案资源管理器中的分支下看到每个nuget包的依赖项

除了之外,由于您将框架项目与
packages.config
一起使用,因此您只能在
packages.config
文件或
xxxx.csproj
文件中看到它们(前提是此nuget包具有依赖关系),但它无法细分每个nuget包的依赖关系

此外,如果您仍然希望通过PackageReference显示net framework项目的依赖性,我建议您可以在我们的-
建议功能
中发布功能请求,以引起Micorosft的注意

PackageReference位于控制台应用程序C中的何处#

有两种nuget MaRange格式(
Packages.config
PackageReference
)可用于安装所有nuget软件包

实际上是自VS2017以来新sdk项目(
net standard
net core
)的一种新的nuget管理格式,而对于net framework项目,它是一种旧的传统nuget管理格式

然而,您应该注意对于传统框架项目,微软做出让步,使用新SDK的pacakgeReference格式,但仍然存在各种兼容性问题--------(
net framework
项目可以同时使用它们,而
net core
/
net standard
项目只能使用PackageReference

如果使用net framework项目,则可以在开始安装nuget软件包之前,通过工具-->选项-->-->常规-->软件包管理更改这两种格式

在开始安装第一个nuget软件包之前,您应该指定此格式,当您指定此格式时,以后安装的nuget将默认使用此方法,并且无法更改

我的问题是,客户的依赖文件位于哪里 设置(第一个设置)

1)如果使用带有PackageReference
net framework控制台
项目,恐怕您看不到nuget的依赖关系。由于几个兼容性问题,带有PackageReference的旧sdk项目不支持显示nuget包的依赖关系

2)如果使用
net core console
项目,可以在解决方案资源管理器中看到依赖项,最新的sdk项目确实支持这一点。它有一个新的行为,您可以在Solution Explorer的分支下看到每个nuget包的依赖关系

除了之外,由于您将框架项目与
packages.config
一起使用,因此您只能在
packages.config
文件或
xxxx.csproj
文件中看到它们(前提是此nuget包具有依赖关系),但它无法细分每个nuget包的依赖关系


此外,如果您还想通过PackageReference显示net framework项目的依赖性,我建议您可以在我们的-
建议功能
中发布功能请求,以引起Micorosft的注意。

谢谢,不是100对,@MuhammadFaizanKhan也许我错了