在c中以编程方式读取nuget.config#

在c中以编程方式读取nuget.config#,nuget,nuget-package-restore,Nuget,Nuget Package Restore,是否可以使用nuget.visualStudio、nuget.core或nuget.clients dll读取nuget.config文件和包中的源代码。我可以解析xml,但nuget.dll中是否有任何开箱逻辑是!您需要使用位于的numget.Configuration包 然后您可以使用以下代码- using NuGet.Configuration; using System; namespace ConsoleApp { class Program { st

是否可以使用nuget.visualStudio、nuget.core或nuget.clients dll读取nuget.config文件和包中的源代码。我可以解析xml,但nuget.dll中是否有任何开箱逻辑是!您需要使用位于的
numget.Configuration

然后您可以使用以下代码-

using NuGet.Configuration;
using System;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // basic implementation of nuget.config in code
            var setting = Settings.LoadSpecificSettings(@"f:\root", "nuget.config");

            // get sources 
            var packageSourceProvider = new PackageSourceProvider(setting);
            var sources = packageSourceProvider.LoadPackageSources();

            foreach(var source in sources)
            {
                Console.WriteLine($"{source.Name}: {source.SourceUri}");
            }
        }
    }
}
这将生成以下输出-

NuGet.org: https://api.nuget.org/v3/index.json
使用的示例配置文件(比如路径
f:\root\nuget.config
)-


<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="NuGet.org" value="https://api.nuget.org/v3/index.json" />
  </packageSources>
</configuration>