De retour de “raw” en json ASP.NET Core 2.0 de l'Api Web

Façon standard autant que je sache, pour renvoyer les données dans ASP.NET Web de Base de l'Api est en utilisant IActionResult et fournissant par exemple un OkObject résultat. Cela fonctionne bien avec les objets, mais que si j'ai obtenu une chaîne JSON en quelque sorte, et je veux juste retour JSON à l'appelant?

par exemple

public IActionResult GetSomeJSON()
{
    return Ok("{ \"name\":\"John\", \"age\":31, \"city\":\"New York\" }");
}

Ce ASP.NET Core n'est ici, il faut que la Chaîne JSON, et l'enveloppe en JSON (par exemple il s'échappe de l'JSON)

Retour en texte brut avec [Produces("text/plain")] fonctionne en fournissant le "RAW" du contenu, mais il définit également le type de contenu de la réponse à la PLAINE au lieu de JSON. Nous utilisons [Produces("application/json")] sur nos Contrôleurs.

Comment puis-je retourner le JSON que j'ai comme un normal JSON type de contenu sans qu'il soit échappé?

Remarque: Il n'a pas d'importance comment la chaîne JSON a été acquis, il pourrait être de service 3ème partie, ou il existe des sérialisation besoins afin que nous voulons faire de la sérialisation personnalisée au lieu d'utiliser la valeur par défaut JSON.NET sérialiseur.

json envoyé en tant que corps ou d'un param?
JSON envoyé en tant que valeur de retour (corps), donc pas de paramètres impliqués.

OriginalL'auteur MichelZ | 2018-01-19