Я пытаюсь взять содержимое winyiwyg TinyMCE и отправить его в функцию контроллера для вставки базы данных.Эта настройка всегда будет отображать Не удалось загрузить ресурс: сервер ответил с состоянием 500 (Внутренняя ошибка сервера) со ссылкой на мой / admin / postnewarticle / route в качестве данных на консоли ошибок в Chrome:
$.ajax({
url: '/admin/postnewarticle/',
type: 'post',
dataType: 'json',
data: {
content: tinyMCE.get('article-content').getContent(),
title: $('#article-title').val(),
articleType: $('#article-types option:selected').val()
},
success: function (result) {
// success stuff
}
});
Когда я отлаживаю в Chrome, размещение tinyMCE.get('article-content').getContent()
в качестве выражения часов показывает мне, что я получаю желаемое значение здесь: все, что я написал в текстовой области TinyMCE, обернуто в тег <p>
,Если я заменю значение для «содержимого» каким-либо случайным статическим строковым значением без каких-либо тегов HTML, метод контроллера выполняется правильно.
Вот метод контроллера, который я пытаюсь использовать:
[HttpPost]
[Authorize(Roles = "Administrators")]
[ValidateInput(false)]
public JsonResult PostNewArticle(string title, HtmlString content, string articleType)
{
// do stuff
}
Обратите внимание, что тип данных для "содержимого" здесь - HtmlString ... это было изменено из простой строки после некоторого исследования, которое в конечном итоге привело меня здесь .Но независимо от того, является ли она строкой или HtmlString, действие по-прежнему не выполняется, если значение для содержимого содержит тег HTML.
Любая и вся помощь приветствуется!