У меня проблема, когда метод IActionResult внутри моего контроллера не может проанализировать сериализованный JSon объект с форматированием HTML внутри свойства.
Объект Json, по сути, представляет собой сообщение электронной почты, передаваемое API для помещения в очередь.
Например:
{
"Id": 1,
"Name": "Joe Bloggs",
"Description": "Hi Adam,\r\nThis is a test email\r\n\r\n",
"Date": "2020-05-05T13:10:31.1619652+01:00",
}
Если это простое сообщение, как указано выше, оно проходит нормально. Однако, если сообщение содержит расширенное форматирование HTML, тогда оно не работает с 500 Internal Server
.
Я пробовал следующие два пункта, но не нашел решения:
Использование пакета Newtonsoft Json Core Nuget и services.AddControllers().AddNewtonsoftJson();
Извлеките Json из Request.Body
, и меня представит Synchronous operations are disallowed
, поэтому включите AllowSynchronousIO = true и все еще нет go :(
Я не совсем уверен, что еще может решить мою проблему? Есть предложения?
Вот метод IActionResult в контроллере
public IActionResult HandleEmailMessage(int Id, [FromBody] customClass)
{
var addEmailMessage = _service.AddMessage(Id, customClass);
return Ok(addEmailMessage.Result);
}