无法在编辑器上显示Xml站点地图
Xml.cshtml无法在编辑器上显示Xml站点地图,xml,asp.net-mvc,ckeditor,Xml,Asp.net Mvc,Ckeditor,Xml.cshtml @Html.TextArea("", ViewData.TemplateInfo.FormattedModelValue.ToString()) <script type="text/javascript"> CKEDITOR.replace('@(ViewData.TemplateInfo.HtmlFieldPrefix)', { allowedContent: true }); </script> 看法 控制器 public A
@Html.TextArea("", ViewData.TemplateInfo.FormattedModelValue.ToString())
<script type="text/javascript">
CKEDITOR.replace('@(ViewData.TemplateInfo.HtmlFieldPrefix)', {
allowedContent: true
});
</script>
看法
控制器
public ActionResult MyAction()
{
var sitemap = new XDocument(
new XDeclaration("1.0", "utf-8", "yes"),
new XElement(ns + "urlset",
new XElement(ns + "url",
new XElement(ns + "loc", "example.com"),
new XElement(ns + "lastmod", String.Format("{0:yyyy-MM-dd}", DateTime.Now)),
new XElement(ns + "changefreq", "Weekly"),
new XElement(ns + "priority", "0.5")
)));
var viewModel = new MyViewModel();
viewModel.Id = 5;
viewModel.Xml = sitemap.ToString();
return View(viewModel);
}
在控制器内部,创建了站点地图,并将保存Xml
的viewmodel发送到视图。在视图中,EditorFor
已成功转换为CKEditor
。但问题是它删除了Xml标记并显示纯文本。如果显示源代码,Xml
。
我刚刚安装了codesippet
插件并添加了config.extraPlugins='codesippet'代码>在config.js
中,但没有任何区别。
如何在CKEditor中将站点地图显示为Xml?CKEditor是错误的编辑Xml文档的工具
如果你搜索一下,你会发现其他人已经尝试过了,但是这与这个编辑器的目的背道而驰,你将不得不做太多的自定义更改
一般来说,不要尝试使用HTML编辑器来编辑XML。搜索为XML设计的工具或使用纯文本区域
@model Project1.ViewModels.MyViewModel
@Html.EditorFor(model=>model.Xml)
public ActionResult MyAction()
{
var sitemap = new XDocument(
new XDeclaration("1.0", "utf-8", "yes"),
new XElement(ns + "urlset",
new XElement(ns + "url",
new XElement(ns + "loc", "example.com"),
new XElement(ns + "lastmod", String.Format("{0:yyyy-MM-dd}", DateTime.Now)),
new XElement(ns + "changefreq", "Weekly"),
new XElement(ns + "priority", "0.5")
)));
var viewModel = new MyViewModel();
viewModel.Id = 5;
viewModel.Xml = sitemap.ToString();
return View(viewModel);
}