示例#1
0
        private void ConfigureMimeographs()
        {
            _mimeographs = new Mimeographs();
            var blogTemplateMimeo = new Mimeograph <BlogTemplate>(b =>
            {
                b.Tokenize(p => p.BlogTitle, "{BlogTitle}");
                b.Tokenize(p => p.PageTitle, "{PageTitle}");
                b.Tokenize(p => p.JavaScriptIncludes, "{JavaScriptIncludes}");
                b.Interpolate("{ContentPage('", ".*", "')}", data => data.ToString());
                b.TokenizeIf(p => p.Post, "{Post}", p => p.Post != null, block => {
                    block.Tokenize(p => p.PostTitle, "{PostTitle}");
                    block.Tokenize(p => p.PostDescription, "{PostDescription}");
                    block.Tokenize(p => p.PostBody, "{PostBody}");
                    block.Block(p => p.Comments, "{Comments}", ctx => {
                        ctx.Tokenize(p => p.Text, "{CommentText}");
                    }).EndsWith("{/Comments}");
                }).EndsWith("{/Post}");
                b.Block(p => p.Posts, "{Posts}", block =>
                {
                    block.Tokenize(p => p.PostTitle, "{PostTitle}");
                    block.Tokenize(p => p.PostDescription, "{PostDescription}");
                    block.Tokenize(p => p.PostBody, "{PostBody}");
                    block.Block(p => p.Comments, "{Comments}", comments =>
                    {
                        comments.Tokenize(c => c.Author, "{Author}");
                        comments.Tokenize(c => c.Email, "{Email}");
                        comments.Tokenize(c => c.Text, "{CommentText}");
                    }).EndsWith("{/Comments}");
                }).EndsWith("{/Posts}");
            });

            _mimeographs.Add(blogTemplateMimeo);
        }
示例#2
0
 public void SetUp()
 {
     _mimeo = new Mimeograph <BlogTemplate>(b => {
         b.Tokenize(p => p.BlogTitle, "{BlogTitle}");
         b.Tokenize(p => p.PageTitle, "{PageTitle}");
         b.Tokenize(p => p.JavaScriptIncludes, "{JavaScriptIncludes}");
         b.TokenizeIf(p => p.Post, "{Post}", p => p.Post != null, block => {
             block.Tokenize(p => p.PostTitle, "{PostTitle}");
             block.Tokenize(p => p.PostDescription, "{PostDescription}");
             block.Tokenize(p => p.PostBody, "{PostBody}");
         }).EndsWith("{/Post}");
         b.Block(p => p.Posts, "{Posts}", block => {
             block.Tokenize(p => p.PostTitle, "{PostTitle}");
             block.Tokenize(p => p.PostDescription, "{PostDescription}");
             block.Tokenize(p => p.PostBody, "{PostBody}");
             block.Block(p => p.Comments, "{Comments}", comments => {
                 comments.Tokenize(c => c.Author, "{Author}");
                 comments.Tokenize(c => c.Email, "{Email}");
                 comments.Tokenize(c => c.Text, "{CommentText}");
             }).EndsWith("{/Comments}");
         }).EndsWith("{/Posts}");
     });
 }