У меня есть ApiController, который обслуживает XML / JSON, но я бы хотел, чтобы одно из моих действий возвращало чистый HTML. Я пробовал следующее, но он по-прежнему возвращает XML / JSON.
public string Get()
{
return "<strong>test</strong>";
}
Вот что возвращает приведенное выше:
<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/"><strong>test</strong></string>
Есть ли способ вернуть только чистый, неэкранированный текст, даже без окружающих тегов XML (возможно, другой тип возвращаемого атрибута действия)?
Другое возможное решение. В Web API 2 я использовал метод base.Content () для
APIController
:Мне нужно было сделать это, чтобы обойти ошибку IE9, из-за которой он пытался загрузить содержимое JSON. Это также должно работать с данными типа XML при использовании
XmlMediaTypeFormatter
средства форматирования мультимедиа.Надеюсь, это кому-то поможет.
источник
Просто
return Ok(value)
не пойдет, трактуется какIEnumerable<char>
.Вместо этого используйте
return Ok(new { Value = value })
или аналогичный.источник
Я вызываю следующий метод контроллера webapi2 из метода контроллера mvc:
Я вызываю его из этой процедуры на сервере asp.net:
источник
Если вы используете MVC, а не WebAPI, вы можете использовать метод base.Content:
источник
Мы должны стремиться возвращать не html, а чистые данные из нашего API и соответствующим образом форматировать данные в пользовательском интерфейсе, но, возможно, вы можете использовать:
меня устраивает
источник