How can I get the NuGet package version programmatically from a NuGet feed?(如何以编程方式从 NuGet 源获取 NuGet 包版本?)
问题描述
首先,在所有 NuGet 代码中,我试图找出要引用的代码.
First off, of all the NuGet code, I'm trying to figure out which one to reference.
主要问题是,给定一个 NuGet 包名称,是否有一种编程方式可以从 NuGet 提要中检索版本以及用于一般消费的最新版本?
The main question is, given a NuGet package name, is there a programmatic way to retrieve the versions from the NuGet feed and also the latest version for general consumption?
例如,给定包名称 ILMerge,最好获取最新的包版本 2.13.307.
For example, given a package name of ILMerge, it would be nice to get the latest package version of 2.13.307.
// Pseudo code, makes a lot of assumptions about NuGet programmatic interfaces
PackageRef currentVersion = nugetlib.getpackageinfo(args[0]);
Console.WriteLine("Package Id: '{0}':", pkg.Id);
Console.WriteLine(" Current version: {0}", pkg.Version);
Console.WriteLine(" Available versions: {0}", String.Join(",",pkg.Versions.Select(_=>_)));
推荐答案
使用 NuGet 核心包:
string packageID = "ILMerge";
// Connect to the official package repository
IPackageRepository repo = PackageRepositoryFactory.Default.CreateRepository("https://packages.nuget.org/api/v2");
var version =repo.FindPackagesById(packageID).Max(p=>p.Version);
参考:以编程方式使用包!
这篇关于如何以编程方式从 NuGet 源获取 NuGet 包版本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何以编程方式从 NuGet 源获取 NuGet 包版本?
基础教程推荐
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
- WPF 模态进度窗口 2022-01-01
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- C# 从 List<List<int>> 中删除重 2022-01-01
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
