Exemple #1
0
        private IEnumerable <BlogPost> FindPublishedBlogPosts(IPagination pagination)
        {
            // The query uses two select statements so BlogPostSerialization.DeserializeFromFile is only called for requested files.
            var blogPosts = (
                from yearDirectory in Directory.EnumerateDirectories(_blogDirectory.FullName).OrderByDescending(d => d)
                from monthDirectory in Directory.EnumerateDirectories(yearDirectory).OrderByDescending(d => d)
                from dayDirectory in Directory.EnumerateDirectories(monthDirectory).OrderByDescending(d => d)
                from blogPostFile in Directory.EnumerateFiles(dayDirectory, "*.md").OrderByDescending(d => d)
                select blogPostFile)
                            .Skip(pagination.SkipCountForLinqQueries())
                            .Take(pagination.PageSize)
                            .Select(blogPostFile => BlogPostSerialization.DeserializeFromFile(blogPostFile, PublishedDirectory, YamlMarkdown));

            return(blogPosts);
        }
 public void WhenICallBlogPost_DeserializeMarkdownWithFrontMatter()
 {
     _actual.BlogPost = BlogPostSerialization.Deserialize("dummy/relative/uri", _given.MarkdownWithFrontMatter, _yamlMarkdown);
 }