32 lines
No EOL
809 B
C#
32 lines
No EOL
809 B
C#
using System;
|
|
using Markdig;
|
|
using Markdig.SyntaxHighlighting;
|
|
using Website.Models;
|
|
|
|
namespace Website.ViewModels
|
|
{
|
|
public class BlogPostViewModel
|
|
{
|
|
public BlogPostViewModel(BlogPost blogPost)
|
|
{
|
|
Title = blogPost.Title;
|
|
Content = Markdown.ToHtml(blogPost.Content).Trim();
|
|
Timestamp = blogPost.Timestamp;
|
|
Url = blogPost.Url;
|
|
|
|
Content = Markdown.ToHtml(blogPost.Content, GetPipeline()).Trim();
|
|
}
|
|
|
|
private MarkdownPipeline GetPipeline()=>new MarkdownPipelineBuilder()
|
|
//.UseAdvancedExtensions()
|
|
.UseAutoLinks()
|
|
.UseSoftlineBreakAsHardlineBreak()
|
|
.UseSyntaxHighlighting()
|
|
.Build();
|
|
|
|
public string Title { get; private set; }
|
|
public string Content { get; private set; }
|
|
public DateTime Timestamp { get; private set; }
|
|
public string Url { get; private set; }
|
|
}
|
|
} |