.NET Core 中的 *deps.json 文件

问题描述 投票:0回答:1

.NET Core 中 *deps.json 文件的用途是什么? 将引用存储在此类文件中而不是程序集清单中(如独立 .NET Framework 中)的原因是什么?

使用 Ildasm,我检查了在 dotnet build 命令之后程序集清单不包含这些依赖项的条目。

但是在 dotnetpublish 命令之后它有条目。

c# .net .net-core .net-assembly ildasm
1个回答
17
投票

.deps.json
文件包含有关已构建程序集引用的程序集的元数据、搜索它们的位置以及有关所使用的编译选项的信息。

此信息由加载和配置运行时的本机组件 (

corehost
) 读取。当需要加载引用的程序集时,主机将使用此文件中的信息(以及任何
runtimeconfig.json
/
runtimeconfig.dev.json
)来找到要加载的正确程序集。

此信息也用于其他地方。例如,ASP.NET Core 的 Razor 视图编译也使用它来将正确的引用和配置传递给生成的代码。当单元测试库加载到测试主机时,单元测试主机也需要使用此文件中的信息。

Microsoft.Extensions.DependencyModel
NuGet 包中提供了用于读写此文件的托管 API。

© www.soinside.com 2019 - 2024. All rights reserved.