in TeamCity.CSharpInteractive/NuGetRestoreService.cs [46:103]
public bool TryRestore(NuGetRestoreSettings settings, out string projectAssetsJson)
{
var tempDirectory = _environment.GetPath(SpecialFolder.Temp);
var outputPath = Path.Combine(tempDirectory, _uniqueNameGenerator.Generate());
var targetFrameworkMoniker = settings.TargetFrameworkMoniker;
var tfm = targetFrameworkMoniker ?? _dotnetEnvironment.TargetFrameworkMoniker;
targetFrameworkMoniker = _targetFrameworkMonikerParser.Parse(tfm);
var projectStyle = settings.PackageType switch
{
NuGetPackageType.Tool => "DotNetToolReference ",
_ => "PackageReference"
};
_log.Trace(() => new[] {new Text($"Restore nuget package {settings.PackageId} {settings.VersionRange} to \"{outputPath}\" and \"{settings.PackagesPath}\".")});
var restoreGraphItems = new[]
{
CreateTaskItem("RestoreSpec"),
// { "ConfigFilePaths", @"C:\Users\Nikol\AppData\Roaming\NuGet\NuGet.Config;C:\Program Files (x86)\NuGet\Config\Microsoft.VisualStudio.FallbackLocation.config;C:\Program Files (x86)\NuGet\Config\Microsoft.VisualStudio.Offline.config;C:\Program Files (x86)\NuGet\Config\Xamarin.Offline.config" }
CreateTaskItem(
"ProjectSpec",
("ProjectName", Project),
("ProjectStyle", projectStyle),
("Sources", string.Join(";", settings.Sources)),
("FallbackFolders", string.Join(";", settings.FallbackFolders)),
("OutputPath", outputPath),
("PackagesPath", settings.PackagesPath),
("ValidateRuntimeAssets", "false")),
CreateTaskItem(
"Dependency",
("TargetFrameworks", tfm),
("Id", settings.PackageId),
("VersionRange", settings.VersionRange?.ToString() ?? "*"),
("IncludeAssets", "All")),
CreateTaskItem(
"TargetFrameworkInformation",
("TargetFramework", tfm),
("TargetFrameworkMoniker", targetFrameworkMoniker))
};
projectAssetsJson = Path.Combine(outputPath, "project.assets.json");
return new RestoreTask
{
RestoreDisableParallel = settings.DisableParallel ?? _restoreDisableParallel,
RestoreIgnoreFailedSources = settings.IgnoreFailedSources ?? _restoreIgnoreFailedSources,
HideWarningsAndErrors = settings.HideWarningsAndErrors ?? _hideWarningsAndErrors,
RestoreNoCache = settings.NoCache ?? _restoreNoCache,
RestoreForceEvaluate = false,
RestorePackagesConfig = false,
RestoreRecursive = true,
RestoreForce = false,
Interactive = _settings.InteractionMode == InteractionMode.Interactive,
RestoreGraphItems = restoreGraphItems,
BuildEngine = _buildEngine
}.Execute();
}