internal void CopyFrom(SetResult setResult) { this.Number = setResult.Number; this.Player1Games = setResult.Player1Games; this.Player2Games = setResult.Player2Games; this.Player1TieBreak = setResult.Player1TieBreak; this.Player2TieBreak = setResult.Player2TieBreak; }
private void ParseMatchResult(Match match, string result) { if (string.IsNullOrEmpty(result)) { return; } var setResults = new List<SetResult>(); var sets = result.Trim().Split(' '); for (var i = 0; i < sets.Length; i++) { var set = sets[i]; var setResult = new SetResult(); if (set.Contains('-') && set.Split(new[] { "-" }, StringSplitOptions.RemoveEmptyEntries).Length == 2) { setResult.Number = i + 1; setResult.Player1 = match.Player1; setResult.Player2 = match.Player2; setResult.Player1Games = int.Parse(set.Split('-')[0]); setResult.Player2Games = int.Parse(set.Split('-')[1]); if (match.SetResults != null && match.SetResults.Count > i) { var existingSetResult = match.SetResults[i]; existingSetResult.CopyFrom(setResult); setResults.Add(existingSetResult); } else { setResults.Add(setResult); } } else { throw new ArgumentException("Set result has wrong format"); } } match.SetResults = setResults; }