public MarkdownContainer Build(IEnumerable<DataRow> dataRows) { var container = new MarkdownContainer(); if (dataRows.Count() == 0) container.Append(BuildEmptyTable()); else container.Append(BuildNonEmptyTable(dataRows)); return container; }
public void TestCanConfigureOutputOfCollectionsUsingExtensionMethod() { var bart = new Person { Name = "Bart Simpson", Age = 10 }; var lisa = new Person { Name = "Lisa Simpson", Age = 8 }; var maggie = new Person { Name = "Maggie Simpson", Age = 1 }; var homer = new Person { Name = "Homer Simpson", Age = 36, Children = new[] { bart, lisa, maggie } }; var marge = new Person { Name = "Marge Simpson", Age = 35, Children = new[] { bart, lisa, maggie } }; var milhouse = new Person { Name = "Milhouse Van Houten ", Age = 10 }; var simpsons = new[] { homer, marge, bart, lisa, maggie, milhouse }; var md = new MarkdownContainer(); md.Append("Table built with no options".ToMarkdownHeader()); md.Append(simpsons.ToMarkdownTable()); md.Append("Table built with Default options".ToMarkdownHeader()); md.Append(simpsons.ToMarkdownTable(TableOptions.Default)); md.Append("Table built with ExcludeCollectionProperties options".ToMarkdownHeader()); md.Append(simpsons.ToMarkdownTable(TableOptions.ExcludeCollectionProperties)); Console.WriteLine(md); }
public string RenderMarkdown() { var container = new MarkdownContainer(); container.Append(string.Format("{0} a.k.a. {1}", Character.RealName, Character.Persona).ToMarkdownHeader()); container.Append(string.Format("Tagline: \"{0}\"", Character.Tagline).ToMarkdownParagraph()); container.Append(string.Format("Power source: {0}", Character.PowerSource.Name).ToMarkdownParagraph()); container.Append("Attributes".ToMarkdownSubHeader()); var attributes = from attr in new[] { Character.Might, Character.Prowess, Character.Quickness, Character.Vigor, Character.Charisma, Character.Insight, Character.Logic, Character.Resolve } select new { Attribute = attr.Attribute, Score = attr.TotalScore, Die = attr.BaseDice, Passive = attr.PassiveModifier }; container.Append(attributes.ToMarkdownTable()); container.Append("Derived Attributes".ToMarkdownSubHeader()); var derived = new Dictionary<string, string> { {"Avoidance", Character.Avoidance.TotalScore.ToString() }, {"Fortitude", Character.Fortitude.TotalScore.ToString() }, {"Discipline", Character.Discipline.TotalScore.ToString() }, {"Stamina", Character.Stamina.TotalScore.ToString() }, {"Wounds", Character.Wounds.TotalScore.ToString() }, {"Pace", Character.Pace.TotalScore.ToString() }, {"Initiative", Character.InitiativeRoll.ToString() }, }; var derivedTable = from d in derived select new { Attribute = d.Key, Score = d.Value}; container.Append(derivedTable.ToMarkdownTable()); container.Append("Skills".ToMarkdownSubHeader()); var skills = from s in Character.SkillScores where s.TotalScore > 0 orderby s.Skill.FullName select new { Skill = s.Skill.FullName, Attr = s.AttributeScore.Attribute.Abbreviation(), Die = s.AttributeScore.BaseDice, Score = s.TotalScore, Pass = s.PassiveValue, }; container.Append(skills.ToMarkdownTable()); return container.ToMarkdown(); }
public void ContainerExample() { var log = new MarkdownContainer(); var countries = new[]{"Zimbabwe", "Italy", "Bolivia", "Finland", "Australia"}; log.Append("Countries (unsorted)".ToMarkdownHeader()); log.Append(countries.ToMarkdownNumberedList()); var sorted = countries.OrderBy(i => i); log.Append("Countries (sorted)".ToMarkdownHeader()); log.Append(sorted.ToMarkdownNumberedList()); Console.Write(log); }