Benchmarker.Models.RunSet.AsDict C# (CSharp) Метод

AsDict() публичный Метод

public AsDict ( ) : object>.IDictionary
Результат object>.IDictionary
		public IDictionary<string, object> AsDict ()
		{
			var logURLs = new Dictionary<string, string> ();
			if (LogURL != null) {
				string defaultURL;
				logURLs.TryGetValue ("*", out defaultURL);
				if (defaultURL == null) {
					logURLs ["*"] = LogURL;
				} else if (defaultURL != LogURL) {
					foreach (var run in Runs)
						logURLs [run.Benchmark.Name] = LogURL;
				}
			}

			var dict = new Dictionary<string, object> ();
			dict ["MainProduct"] = Commit.AsDict ();
			dict ["SecondaryProducts"] = SecondaryCommits.Select (c => c.AsDict ()).ToList ();
			dict ["Machine"] = Machine.AsDict ();
			dict ["Config"] = Config.AsDict ();
			dict ["TimedOutBenchmarks"] = new List<string> (TimedOutBenchmarks);
			dict ["CrashedBenchmarks"] = new List<string> (CrashedBenchmarks);
			dict ["StartedAt"] = StartDateTime.ToString (DATETIME_FORMAT);
			dict ["FinishedAt"] = FinishDateTime.ToString (DATETIME_FORMAT);
			dict ["BuildURL"] = BuildURL;
			dict ["LogURLs"] = logURLs;
			dict ["Runs"] = Runs.Select (r => r.AsDict ()).ToList ();
			if (PullRequestBaselineRunSetId != null) {
				var prDict = new Dictionary<string, object> ();
				prDict ["BaselineRunSetID"] = PullRequestBaselineRunSetId.Value;
				prDict ["URL"] = PullRequestURL;
				dict ["PullRequest"] = prDict;
			}
			return dict;
		}