| File: CommandFactory\CommandResolution\AppBaseDllCommandResolver.cs | Web Access |
| Project: src\sdk\src\Cli\dotnet\dotnet.csproj (dotnet) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. #nullable disable using Microsoft.DotNet.Cli.Utils; using Microsoft.DotNet.Cli.Utils.Extensions; namespace Microsoft.DotNet.Cli.CommandFactory.CommandResolution; public class AppBaseDllCommandResolver : ICommandResolver { public CommandSpec Resolve(CommandResolverArguments commandResolverArguments) { if (commandResolverArguments.CommandName == null) { return null; } if (commandResolverArguments.CommandName.EndsWith(FileNameSuffixes.DotNet.DynamicLib)) { var localPath = Path.Combine(SdkPaths.SdkDirectory, commandResolverArguments.CommandName); if (File.Exists(localPath)) { var escapedArgs = ArgumentEscaper.EscapeAndConcatenateArgArrayForProcessStart( new[] { localPath } .Concat(commandResolverArguments.CommandArguments.OrEmptyIfNull())); return new CommandSpec( new Muxer().MuxerPath, escapedArgs); } } return null; } }