From f0db4e829930be8599ae7da6c98f807ad48aa764 Mon Sep 17 00:00:00 2001 From: Tommy Parnell Date: Sun, 17 Jan 2016 10:21:06 -0500 Subject: [PATCH] more fluent syntax --- src/NetrunnerdbToJinteki/Program.cs | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/src/NetrunnerdbToJinteki/Program.cs b/src/NetrunnerdbToJinteki/Program.cs index 9206a85..657e679 100644 --- a/src/NetrunnerdbToJinteki/Program.cs +++ b/src/NetrunnerdbToJinteki/Program.cs @@ -18,16 +18,25 @@ namespace NetrunnerdbToJinteki Console.WriteLine("Input id of decklist"); Environment.Exit(1); } - var stringBuilder = new StringBuilder(); - new Repository() - .GetDecklist(args[0]) - .First() - .Cards - .Select(a => new { Card = new Repository().GetCard(a.Key).First(), Count = a.Value }) - .Where(a => !string.Equals(a.Card.Type, "Identity", StringComparison.OrdinalIgnoreCase)) - .ForEach(a => stringBuilder.AppendLine($"{a.Count} {a.Card.Title}")); - Clipboard.SetText(stringBuilder.ToString()); + var data = new Repository() + .GetDecklist(args[0]) + .First() + .Cards + .Select(a => new { Card = new Repository().GetCard(a.Key).First(), Count = a.Value }) + .Where(a => !string.Equals(a.Card.Type, "Identity", StringComparison.OrdinalIgnoreCase)) + .Select(a => $"{a.Count} {a.Card.Title}") + .Join(Environment.NewLine); + + Clipboard.SetText(data); + } + } + + public static class extension + { + public static string Join(this IEnumerable list, string seperator = "") + { + return string.Join(seperator, list); } } } \ No newline at end of file