示例#1
0
 private static NerdbankGitVersioning GetResult(IProcess process, NerdbankGitVersioningGetVersionSettings toolSettings)
 {
     try
     {
         var output   = process.Output.EnsureOnlyStd().Select(x => x.Text).ToList();
         var settings = new JsonSerializerSettings {
             ContractResolver = new AllWritableContractResolver()
         };
         return(JsonConvert.DeserializeObject <NerdbankGitVersioning>(string.Join("\r\n", output), settings));
     }
     catch (Exception exception)
     {
         throw new Exception($"{nameof(NerdbankGitVersioning)} exited with code {process.ExitCode}, but cannot parse output as JSON:"
                             .Concat(process.Output.Select(x => x.Text)).JoinNewLine(),
                             exception);
     }
 }
        private static NerdbankGitVersioning GetResult(IProcess process, NerdbankGitVersioningGetVersionSettings toolSettings)
        {
            var output = process.Output.EnsureOnlyStd().Select(x => x.Text).JoinNewLine();

            try
            {
                return(SerializationTasks.JsonDeserialize <NerdbankGitVersioning>(output, settings =>
                {
                    settings.ContractResolver = new AllWritableContractResolver();
                    return settings;
                }));
            }
            catch (Exception exception)
            {
                throw new Exception($"Cannot parse {nameof(NerdbankGitVersioning)} output:".Concat(new[] { output }).JoinNewLine(), exception);
            }
        }