有人知道在使用 CKediotr 时如何实现 razor syntax 。我想在CKEditor中输入 c#代码,但我无法这样做,因为它将所有内容呈现为文本。
样品:
我想输入例如@ DateTime.Now.Year里面的ckeditor。
和其他更复杂的类型。
谢谢,
答案 0 :(得分:0)
TinyMCE,(F)CKEditor等是HTML编辑器,并不是为C#(或PHP,ASP,CFM ......)功能而设计的。虽然你可以对评估文本和找出你需要做的事情做出正确的评价,但它却成了一个皇家复杂的PIA。我看到有两种方法可以带来不错的效果。
第一种方法是将(CK)编辑器的输出保存为部分视图,然后在父视图中调用它。这种方法的问题在于,如果不认识Razor的人犯了错误,就会杀死该页面。其他编程错误也是如此。
第二种方法是为常用项创建占位符,然后为替换创建评估方法。
string BodyContent = GetPageContent(PageID); // whatever to grab CKEditor content
BodyContent = BodyContent.Replace("##Year##", DateTime.Now.ToString("yyyy"));
// other replacements here
然后在视图中,您将相应地调用该变量。关于你能做什么是有限的,但这并不总是坏事。