Пример #1
0
        public FrameworkPrecedenceOutput FrameworkPrecedence(FrameworkPrecedenceInput input)
        {
            var output = new FrameworkPrecedenceOutput
            {
                InputStatus = InputStatus.Missing,
                Input       = input
            };

            TFramework framework = default(TFramework);

            if (input != null &&
                !string.IsNullOrWhiteSpace(input.Framework))
            {
                try
                {
                    framework          = _logic.Parse(input.Framework);
                    output.Framework   = framework;
                    output.InputStatus = InputStatus.Valid;
                }
                catch (Exception)
                {
                    output.InputStatus = InputStatus.Invalid;
                }
            }

            if (output.InputStatus == InputStatus.Valid)
            {
                output.Precedence = GetPrecendence(output, framework);
            }

            return(output);
        }
Пример #2
0
        public async Task <IActionResult> FrameworkPrecedence([FromRoute] string nuGetVersion, [FromQuery] FrameworkPrecedenceInput input, CancellationToken token)
        {
            var redirect = GetVersionRedirect();

            if (redirect != null)
            {
                return(redirect);
            }

            var service = await _toolsFactory.GetFrameworkPrecedenceServiceAsync(nuGetVersion, token);

            if (service == null)
            {
                return(NotFound());
            }

            var output          = service.FrameworkPrecedence(input);
            var versionedOutput = await GetSelectedVersionOutputAsync(service, output, token);

            return(View(versionedOutput));
        }