style net mvc link imagen icono con como boton asp asp.net-mvc ajax actionresult

asp.net-mvc - net - imagen en actionlink



En MVC, ¿cómo devuelvo un resultado de cadena? (5)

Hay 2 formas de devolver una cadena desde el controlador a la vista

primero

puede devolver solo la cadena pero no se incluirá en el archivo html, solo se mostrará en el navegador.


segundo

podría devolver una cadena como objeto de Ver Resultado

Aquí están los ejemplos de código para hacer esto.

public class HomeController : Controller { // GET: Home // this will mreturn just string not html public string index() { return "URL to show"; } public ViewResult AutoProperty() { string s = "this is a string "; // name of view , object you will pass return View("Result", (object)s); } }

en el archivo de vista para ejecutar la propiedad automática , lo redireccionará a la vista de resultados y enviará s
código para ver

<!--this to make this file accept string as model--> @model string @{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>Result</title> </head> <body> <!--this is for represent the string --> @Model </body> </html>

Lo ejecuto en http://localhost:60227/Home/AutoProperty

En mi llamada AJAX, quiero devolver un valor de cadena a la página de llamada.

¿Debo usar ActionResult o simplemente devolver una cadena?


Solo puede usar ContentResult para devolver una cadena simple:

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

ContentResult por defecto devuelve un text/plain como su contentType . Esto es recargable por lo que también puede hacer:

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


También puede devolver una cadena si sabe que eso es lo único que devolverá el método. Por ejemplo:

public string MyActionName() { return "Hi there!"; }


public ActionResult GetAjaxValue() { return Content("string value"); }


public JsonResult GetAjaxValue() { return Json("string value", JsonRequetBehaviour.Allowget); }