web-dev-qa-db-fra.com

Dans MVC, comment puis-je renvoyer un résultat de chaîne?

Dans mon appel AJAX, je souhaite renvoyer une valeur de chaîne à la page d'appel.

Devrais-je utiliser ActionResult ou simplement renvoyer une chaîne?

597
user67033

Vous pouvez simplement utiliser le ContentResult pour renvoyer une chaîne simple:

public ActionResult Temp() {
    return Content("Hi there!");
}

ContentResult renvoie par défaut un text/plain sous la forme contentType . C'est surchargeable, donc vous pouvez aussi faire:

return Content("<xml>This is poorly formatted xml.</xml>", "text/xml");
1026
swilliams

Vous pouvez également renvoyer une chaîne si vous savez que c'est la seule chose que la méthode retournera. Par exemple:

public string MyActionName() {
  return "Hi there!";
}
110
Haacked
public ActionResult GetAjaxValue()
{
   return Content("string value");
}
8
public JsonResult GetAjaxValue() 
{
  return Json("string value", JsonRequetBehaviour.Allowget); 
}
0
Kekule