Ejemplo n.º 1
0
        public MarkdownContainer Build(IEnumerable<DataRow> dataRows)
        {
            var container = new MarkdownContainer();

            if (dataRows.Count() == 0)
                container.Append(BuildEmptyTable());
            else
                container.Append(BuildNonEmptyTable(dataRows));

            return container;
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        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);
        }