public override async Task RunRemoteAsync(string targetName, Solution?solution, IReadOnlyList <object?> arguments, CancellationToken cancellationToken) { if (solution != null) { using var scope = await _remotableDataService.CreatePinnedRemotableDataScopeAsync(solution, cancellationToken).ConfigureAwait(false); using var _ = ArrayBuilder <object?> .GetInstance(arguments.Count + 1, out var argumentsBuilder); argumentsBuilder.Add(scope.SolutionInfo); argumentsBuilder.AddRange(arguments); await _serviceEndPoint.InvokeAsync(targetName, argumentsBuilder, cancellationToken).ConfigureAwait(false); } else { await _serviceEndPoint.InvokeAsync(targetName, arguments, cancellationToken).ConfigureAwait(false); } }
public override Task InvokeAsync(string targetName, IReadOnlyList <object> arguments, CancellationToken cancellationToken) => _serviceEndPoint.InvokeAsync(targetName, arguments, cancellationToken);