我正在尝试实现 StackOverflow 上使用的 WMD 编辑器来创建一些基本的 Wiki 风格的功能。我已经到了保存到数据库的时间了,但我不确定我应该保存什么。
如果我保存生成的 HTML,那么我可以正确检索并显示它,但在重新编辑时,我面临的是编辑 HTML,而不是 Markdown。但是,如果我保存 Markdown,我看不到任何将其转换回 HTML 以显示的方式,并且查看 StackOverflow 它会发送浏览器 HTML。
我猜我不需要保存两者,所以我错过了什么简单的事情?
我正在尝试实现 StackOverflow 上使用的 WMD 编辑器来创建一些基本的 Wiki 风格的功能。我已经到了保存到数据库的时间了,但我不确定我应该保存什么。
如果我保存生成的 HTML,那么我可以正确检索并显示它,但在重新编辑时,我面临的是编辑 HTML,而不是 Markdown。但是,如果我保存 Markdown,我看不到任何将其转换回 HTML 以显示的方式,并且查看 StackOverflow 它会发送浏览器 HTML。
我猜我不需要保存两者,所以我错过了什么简单的事情?
绝对保存用户输入的 Markdown 代码。
然后,您将需要一个 Markdown 转换器,将其转换为 HTML 以显示它。
你会在http://en.wikipedia.org/wiki/Markdown#Converters
和http://markdown.infogami.com/找到一堆这样的
我会投票反对在您的情况下使用 JS。似乎有一个.NET 实现,但我不能告诉你它有多好。
在渲染页面时,您必须将 Markdown 代码传递给上述转换器,然后输出返回的 HTML。
如果性能是一个问题,您还可以考虑将 Markdown 代码(供以后编辑)和 HTML 代码(用于显示)保存在数据库中。这样它只会被转换一次。
我建议将准确输入的文本保存到数据库中,以便使用原始降价或 HTML 进行编辑。
当您检索要显示的文本时,您会在服务器端对其进行解析并在必要时转换为 HTML
[编辑]评论:如果我正确理解您的问题,您似乎已经有一种解析和转换为 HTML 的方法。这里讲一下生成的 HTML。
如果我保存生成的 HTML,那么我可以正确检索和显示它,但是在重新编辑时,我面临的是编辑 HTML,而不是 Markdown